Google App Engine PHP SDK - 如何在Ubuntu(15.10)上安装?

时间:2016-02-12 09:28:24

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

Google官方文档可在此处获取:
https://cloud.google.com/appengine/downloads#Google_App_Engine_SDK_for_PHP

但它没有提供有关以下步骤的充分信息:
“4 - 构建并安装PHP解释器和App Engine PHP扩展。在运行开发服务器时指定php-cgi和gae_runtime_module.so的路径。”

我正在使用带有Ubuntu 15.10和PhpStorm的新Virtualbox机器来测试GAE。

有人可以提供有关第4步的明确说明吗?我需要做什么来安装php解释器和App Engine php扩展?

P.S。我已经用谷歌搜索了但我只发现了旧的/令人困惑的教程

2 个答案:

答案 0 :(得分:4)

GAE PHP扩展似乎是一个很新的东西。不要记得在Ubuntu 14.04中的SDK上使用它。

您需要从源代码构建PHP和该扩展。您应该从源代码库(http://php.net/git.php)获取最新的PHP5.5分支并构建它。该链接页面包含有关构建PHP的说明,但该过程类似于以下内容:

$ git clone <php-src> 
$ cd ./php-src/ 
$ git checkout PHP-5.5
$ ./buildconf
$ ./configure --prefix="/opt/php55"
$ sudo make && sudo make install

请记住选择要用PHP5.5编译的模块和软件包,以便在SDK中使用。我认为谷歌有一个正式的模块和扩展列表,他们在GAE PHP和SDK PHP中使用它们。 prefix参数告诉编译器在哪里安装生成的应用程序。

然后你需要获得PHP扩展的源代码并构建它

$ git clone https://github.com/GoogleCloudPlatform/appengine-php-extension
$ cd appengine-php-extension
$ phpize # remember to use the phpize from the just built PHP5.5 binaries
$ ./configure
$ sudo make && sudo make install

(该Git存储库包含详细的构建说明,因此您在构建时可能应该参考它们。)

为刚刚使用PHP配置文件构建的PHP5.5启用生成的.so。

之后,您需要安装PHP SDK并将其配置为使用新构建的PHP二进制文件

$ dev_appserver.py <...> --php_executable_path=/opt/php55/bin/php-cgi

SDK会告诉您构建的PHP二进制文件是否与您使用的SDK版本不兼容。我记得在没有任何警告的情况下,在它工作之前大约5次编译PHP。

但基本上他们告诉你从源代码编译PHP,然后从源代码编译他们的扩展,然后使用内置的PHP +扩展和下载的SDK。这些说明来自我的头脑,因此您可能需要调整命令和程序。

答案 1 :(得分:1)

使用Docker可以简化该过程,这是您可以使用的图像:https://hub.docker.com/r/mhariri/docker-google-appengine-php/

要运行您的应用程序,只需安装docker,然后在您的app目录中运行以下命令:

docker run -it -v $(pwd):/app --rm --net=host mhariri/docker-google-appengine-php