无法让Google App Engine PHP教程正常运行

时间:2016-10-12 08:03:44

标签: google-app-engine google-app-engine-php

我正在关注GAE PHP tutorial,但我无法让本地开发服务器做出正确回应。

我用

运行它

dev_appserver.py --php_executable_path=/usr/bin/php --host=192.168.33.44 ./

它开始很好。当我查看http://192.168.33.44:8080/日志显示

INFO 2016-10-12 07:55:06,264 module.py:788] default: "GET / HTTP/1.1" 200 -

但我得到一个空白页面。教程中没有任何内容可以解释如果遇到问题该怎么做。

到目前为止,我已经:

  • 尝试过PHP 5.5和5.6(remi):没有区别
  • 将损坏的PHP放入helloworld.php:无错误
  • 将处理程序更改为- url: /:/上的空白页,任何其他网址的404页
  • 搜索Google文档:没有帮助
  • 搜索谷歌:没有帮助
  • 问橡皮鸭:没帮忙

我通过Vagrant和Google Cloud SDK 129.0.0运行Centos 7.2。

任何和所有帮助都非常感激。

[编辑]

所要求的其他数据

$ which php
/usr/bin/php


$ /usr/bin/php -v
PHP 5.5.38 (cli) (built: Sep 19 2016 13:45:10)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies


$ which python
/usr/bin/python


$ /usr/bin/python -V
Python 2.7.5

$ cat app.yaml
runtime: php55
api_version: 1

handlers:
- url: /.*
  script: helloworld.php


$ cat helloworld.php
<?php

echo 'Hello, World!';


$ dev_appserver.py --php_executable_path=/usr/bin/php --host=192.168.33.44 ./


Updates are available for some Cloud SDK components.  To install them, please run:
$ gcloud components update

INFO     2016-10-13 08:21:22,699 devappserver2.py:769] Skipping SDK update check.
INFO     2016-10-13 08:21:22,730 api_server.py:205] Starting API server at: http://localhost:46453
INFO     2016-10-13 08:21:22,737 dispatcher.py:197] Starting module "default" running at: http://192.168.33.44:8080
INFO     2016-10-13 08:21:22,738 admin_server.py:116] Starting admin server at: http://localhost:8000
INFO     2016-10-13 08:21:34,142 module.py:788] default: "GET / HTTP/1.1" 200 -

访问http://192.168.33.44:8080/

时来自Chrome的响应标头
Cache-Control: no-cache
Content-Length: 0
Content-Type: text/html
Date: Thu, 13 Oct 2016 08:21:34 GMT
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Server: Development/2.0

我从129更新到130但存在同样的问题

1 个答案:

答案 0 :(得分:6)

原来这个问题是一个微不足道的疏忽......

dev_appserver.py --php_executable_path=/usr/bin/php --host=192.168.33.44 ./

应该是

dev_appserver.py --php_executable_path=/usr/bin/php-cgi --host=192.168.33.44 ./

App Engine 需要php-cgi二进制文件,而不是cli文件。不久前在文档中结束了它的绊脚石,但忘了回到这里并发布答案