Я следую за GAE PHP учебник но я не могу заставить локальный dev-сервер отвечать правильно.
Я запускаю это с
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 -
но я получаю пустую страницу. В руководстве нет ничего, что объясняло бы, что делать, если у вас есть проблемы.
Пока что я:
helloworld.php
: нет ошибок- url: /
: пустая страница на /, страница 404 для любого другого URLЯ использую Centos 7.2 через Vagrant и Google Cloud SDK 129.0.0.
Любая помощь очень ценится.
[РЕДАКТИРОВАТЬ]Дополнительные данные по запросу
$ 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 -
Заголовки ответа от Chrome при доступе http://192.168.33.44:8080/
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, но такая же проблема существует
Оказывается, проблема была в тривиальном упущении …
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, а не клиент. Закончил спотыкаться об этом в документах некоторое время назад, но забыл вернуться сюда и опубликовать ответ
Других решений пока нет …