GAE local php - Mint linux - file storage not working

I am trying to get a local version of the Google application developer console for working with file storage. This works fine on multiple Windows machines. However, when I try to use the Mint Linux system, everything works except for file storage.

First of all, I had to add the following line to php.ini:

google_app_engine.disable_readonly_filesystem = 1

After that, I can upload the images, I will see them in the developer console in blobstore view mode. But I could not see them in the browser.

When I burst into the magazines, the following messages came out.

ERROR 2016-06-08 20:15:59,459 images_stub.py:438] Could not open image <open file '/tmp/appengine.app app.user/blobs/dev~app-app/n/ncoded_gs_file:cGluZ3ZhbHVlLWJ1Y2tldC1sb2NhbC9zdG9yYWdlL2ltYWdlcy91c2Vycy8xNDY1NDE2OTU3LWltZ2pwZw==', mode 'rb' at 0x7f906e2b2e40> for blob_key 'encoded_gs_file:cGluZ3ZhbHVlLWJ1Y2tldC1sb2NhbC9zdG9yYWdlL2ltYWdlcy91c2Vycy8xNDY1NDE2OTU3LWltZ2pwZw==' Traceback (most recent call last): File "/home/user/Programs/google_appengine/google/appengine/api/images/images_stub.py", line 433, in _OpenBlob return Image.open(blob_file) File "/usr/local/lib/python2.7/dist-packages/PIL/Image.py", line 1991, in open raise IOError("cannot identify image file") IOError: cannot identify image file ApplicationError(4,) Traceback (most recent call last): File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate req.respond() File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond self.server.gateway(self).respond() File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2115, in respond response = self.req.server.wsgi_app(self.env, self.start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 272, in __call__ return app(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/module.py", line 1489, in __call__ return self._handle_request(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/module.py", line 865, in _handle_request ret = handler.handle(match, environ, wrapped_start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/wsgi_handler.py", line 60, in handle return self._wsgi_app(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 224, in __call__ return self.serve_image(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 213, in serve_image image, mime_type = self._transform_image(blobkey, resize, crop) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 78, in _transform_image image = _get_images_stub()._OpenImageData(image_data) File "/home/user/Programs/google_appengine/google/appengine/api/images/images_stub.py", line 371, in _OpenImageData image = self._OpenBlob(image_data.blob_key()) File "/home/user/Programs/google_appengine/google/appengine/api/images/images_stub.py", line 441, in _OpenBlob images_service_pb.ImagesServiceError.BAD_IMAGE_DATA) ApplicationError: ApplicationError: 4 Traceback (most recent call last): File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate req.respond() File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond self.server.gateway(self).respond() File "/home/user/Programs/google_appengine/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2115, in respond response = self.req.server.wsgi_app(self.env, self.start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 272, in __call__ return app(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/module.py", line 1489, in __call__ return self._handle_request(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/module.py", line 865, in _handle_request ret = handler.handle(match, environ, wrapped_start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/wsgi_handler.py", line 60, in handle return self._wsgi_app(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 224, in __call__ return self.serve_image(environ, start_response) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 213, in serve_image image, mime_type = self._transform_image(blobkey, resize, crop) File "/home/user/Programs/google_appengine/google/appengine/tools/devappserver2/blob_image.py", line 78, in _transform_image image = _get_images_stub()._OpenImageData(image_data) File "/home/user/Programs/google_appengine/google/appengine/api/images/images_stub.py", line 371, in _OpenImageData image = self._OpenBlob(image_data.blob_key()) File "/home/user/Programs/google_appengine/google/appengine/api/images/images_stub.py", line 441, in _OpenBlob images_service_pb.ImagesServiceError.BAD_IMAGE_DATA) 

The message resolves arround bad image data. but devserver has no problem reading this.

Are there any actions that I could take to solve this problem?

+6
source share
1 answer

This is probably a SELinux problem. Writing web server permissions to /home/ usually not included in the SELinux policy by default.

Check your logs in / var / log / messages and / var / log / audit / audit.log. You can get more information on how to disable SELinux or reconfigure it to allow writing to /home/ .

0
source

All Articles