【问题标题】:App engine PHP modules not working应用引擎 PHP 模块不工作
【发布时间】:2016-12-07 13:30:31
【问题描述】:

我阅读了有关 GAE 模块的文档。这个sample application 展示了如何在 GAE 应用程序中使用模块。我稍微修改了代码以同时使用php and python languages

这里是对应代码所在的Github link

当我尝试在本地机器上运行此应用程序时,通过运行此命令

dev_appserver.py dispatch.yaml app.yaml php.yaml static_backend.yaml --php_executable_path /usr/bin/php

除了用 php 编写的代码外,一切正常。当我尝试通过触发此localhost:8080/mobile/ 访问该特定部分时,我得到一个空页面而不是Hello World

【问题讨论】:

  • 您在日志中看到了什么?
  • 在日志上它不会显示任何错误只是 GET /mobile/ 200
  • 能否添加自运行dev_appserver.py 命令以来的完整日志?

标签: php python google-app-engine


【解决方案1】:

我已经毫无问题地运行了您的代码。

dev_appserver.py dispatch.yaml app.yaml php.yaml static_backend.yaml 
INFO     2016-08-03 04:19:01,413 devappserver2.py:769] Skipping SDK update check.
INFO     2016-08-03 04:19:01,517 api_server.py:205] Starting API server at: http://localhost:52017
INFO     2016-08-03 04:19:01,520 dispatcher.py:185] Starting dispatcher running at: http://localhost:8080
INFO     2016-08-03 04:19:01,526 dispatcher.py:197] Starting module "default" running at: http://localhost:8081
INFO     2016-08-03 04:19:01,718 dispatcher.py:197] Starting module "php-module" running at: http://localhost:8082
INFO     2016-08-03 04:19:01,734 dispatcher.py:197] Starting module "static-backend" running at: http://localhost:8083
INFO     2016-08-03 04:19:01,744 admin_server.py:116] Starting admin server at: http://localhost:8000
INFO     2016-08-03 04:19:02,209 module.py:1730] New instance for module "php-module" serving on:
http://localhost:8082

INFO     2016-08-03 04:19:02,759 module.py:1730] New instance for module "static-backend" serving on:
http://localhost:8083

INFO     2016-08-03 04:19:03,283 module.py:788] php-module: "GET /_ah/start HTTP/1.1" 200 24
INFO     2016-08-03 04:19:03,470 module.py:788] static-backend: "GET /_ah/start HTTP/1.1" 200 3108
INFO     2016-08-03 04:19:15,683 module.py:788] static-backend: "GET /mobile/ HTTP/1.1" 200 3752
INFO     2016-08-03 04:19:16,407 module.py:788] static-backend: "GET /favicon.ico HTTP/1.1" 200 3626
INFO     2016-08-03 04:19:18,914 module.py:788] static-backend: "GET /mobile HTTP/1.1" 200 3710
INFO     2016-08-03 04:19:19,345 module.py:788] static-backend: "GET /favicon.ico HTTP/1.1" 200 3650
INFO     2016-08-03 04:19:21,096 module.py:788] static-backend: "GET / HTTP/1.1" 200 3648

尝试以下方法:

  • 使用gcloud components install app-engine-php安装所有必要的PHP扩展
  • 省略--php-executable-flag
  • 确保使用终端上的命令which php 正确,并将--php-executable-flag 指向您的php-cgi

【讨论】:

  • 您看到了什么错误,which php 向您显示了什么?
  • 我通过运行dev_appserver.py dispatch.yaml app.yaml php.yaml static_backend.yaml --php_executable_path /usr/bin/php-cgi 命令让它工作了。即,不得不提php-cgi路径
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-14
  • 2013-01-01
  • 1970-01-01
相关资源
最近更新 更多