5

PHP 1.8.1 用の最新の SDK をインストールしましたが、ローカルで実行するのに問題があります。

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

警告:require_once(google/appengine/runtime/ApiProxy.php): ストリームを開くことができませんでした: No such file or directory in D:\google_appengine 1.8.1\google\appengine \tools\devappserver2\php\setup.php21
INFO
2013-06-13 03:16:40,938 server.py:593] デフォルト: "GET / HTTP/1.1" 500 -
致命的なエラー: require_once(): 必要な 'google/appengine/runtime/ApiProxy.php' を開くことができませんでした ( include_path='D:\Testing') の D:\google_appengine 1.8.1\google \appengine\tools\devappserver2\php\setup.phpの21行目

問題が何であるかを見つけようとしていますが、何が間違っているのかわかりません。不足している PIL モジュールは何ですか? ApiProxy.php が見つからないというエラーが表示されますが、次の場所にあります。

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

一部の人が同様の問題を投稿し、次のようにして修正したと述べました

問題は、Python バージョンの Google-App-engine も持っていることです。この問題を解決するには、「dev_appserver」を PHP-GAE-SDK に指定する必要があります。

それが何なのかわかりません。表示されているエラーは修正されますか。何かご意見は?

4

1 に答える 1

15

Windows で 1.8.1 リビジョンを作成したとき、Google は少しおかしくなったようです。これを修正するには、次のファイルに移動します。

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

これは 112 行目にあるはずです。

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

それを次のように変更します。

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

%s を囲む余分な引用符のペアに注意してください。

于 2013-06-14T05:44:05.510 に答える