PHP GAE not able to run SDK locally

2019-03-14 03:16发布

I installed the latest SDK for php 1.8.1 and I am having trouble getting it to run locally

D:\google_appengine 1.8.1>dev_appserver.py --php_executable_path=D:\PHP\php-cgi.exe \Testing --port=5000

INFO     2013-06-13 03:16:30,931 sdk_update_checker.py:244] Checking for updates to the SDK.

INFO     2013-06-13 03:16:32,851 sdk_update_checker.py:260] Update check failed: HTTP Error 404: Not Found

**WARNING  2013-06-13 03:16:32,861 api_server.py:314] Could not initialize images API; you are likely missing the Python "PIL" module.**

INFO     2013-06-13 03:16:32,868 api_server.py:138] Starting API server at: http://localhost:60628

INFO     2013-06-13 03:16:32,874 dispatcher.py:164] Starting server "default" running at: http://localhost:5000

INFO     2013-06-13 03:16:32,878 admin_server.py:117] Starting admin server at: http://localhost:8000

ERROR:root:php failure (255) with:
X-Powered-By: PHP/5.4.16
Content-type: text/html

Warning: require_once(google/appengine/runtime/ApiProxy.php): failed to open stream: No such file or directory in D:\google_appengine 1.8.1\google\appengine \tools\devappserver2\php\setup.php on line 21
INFO
2013-06-13 03:16:40,938 server.py:593] default: "GET / HTTP/1.1" 500 -
Fatal error: require_once(): Failed opening required 'google/appengine/runtime/ApiProxy.php' (include_path='D:\Testing') in D:\google_appengine 1.8.1\google \appengine\tools\devappserver2\php\setup.php on line 21

I am trying to find what the problem is but have no idea what is wrong. What is the PIL module I am missing? The error says that ApiProxy.php is missing but it is located at

D:\google_appengine 1.8.1\php\sdk\google\appengine\runtime

Some one posted a similar issue and said they fixed it by doing the following

The problem is I also have a python version Google-App-engine. In order to solve this this problem, I need to specify the "dev_appserver" to PHP-GAE-SDK

I have no idea what that and will it fix the errors shown. Any thoughts?

1条回答
甜甜的少女心
2楼-- · 2019-03-14 03:45

Google seems to have messed up a little when they made the 1.8.1 revision on Windows. To fix it, go into this file:

D:\google_appengine 1.8.1\google\appengine\tools\devappserver2\php\runtime.py

You should find this at line 112:

  if sys.platform == 'win32':
    include_path = 'include_path=%s' % ';'.join(include_paths)

Change that to:

  if sys.platform == 'win32':
    include_path = 'include_path="%s"' % ';'.join(include_paths)

Note the extra pair of quotes around the %s.

查看更多
登录 后发表回答