2016-10-12 6 views
1

Я следую за GAE PHP tutorial, но я не могу заставить локальный сервер-разработчик правильно реагировать.Не удалось получить учебник PHP для Google App Engine

я запускаю его с

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 страницы для любого другого URL
  • мытой Документы Google не помогает
  • мытого Google: не помогает
  • Запрашиваемая резиновая утка: без помощи

Я запускаю Centos 7.2 через Vagrant и Google Cloud SDK 129.0.0.

Любая помощь очень ценится.

[EDIT]

Дополнительные данные в соответствии с просьбой

$ 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, но та же проблема существует

+0

Чтобы покрыть базы, опубликуйте полный вывод консоли, опубликуйте приложение app.yaml и опубликуйте содержимое файла обработчика скрипта , Также проверьте, какую версию PHP и Python вы установили. – BrettJ

+0

Кажется действительно маловероятным, но если вы опустите параметр -host и допустите это значение по умолчанию для localhost, у вас все еще есть тот же результат? – BrettJ

+0

Привет Крис! Вы получаете разумный вывод из порта 8000? Это локальные страницы администратора dev. – Tom

ответ

1

Оказывается, проблема была тривиальным недосмотром ...

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 ./ 

Приложение Engine требует PHP-CGI бинарный файл, а не один интерфейс командной строки. Закончилось спотыкаться о нем в документах некоторое время назад, но забыл вернуться сюда и ответить на этот вопрос

+0

спасибо! это сложно, и это кажется единственным ответом, который я нашел в Интернете. Документация Google довольно бедна, поскольку их учебник почти наверняка окажется в опасности. –