2

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 扩展程序?

Ps 我已经用谷歌搜索过,但我只找到了旧的/令人困惑的教程

4

2 回答 2

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

如果构建的 PHP 二进制文件与您使用的 SDK 版本不兼容,SDK 会通知您。我记得在没有任何警告的情况下从源代码编译 PHP 大约 5 次。

但本质上,他们是在告诉您从源代码编译 PHP,然后从源代码编译他们的扩展,然后将构建的 PHP+扩展与下载的 SDK 一起使用。这些说明来自我的头脑,因此您可能需要调整命令和程序。

于 2016-02-12T09:53:01.887 回答
1

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

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

docker run -it -v $(pwd):/app --rm --net=host mhariri/docker-google-appengine-php
于 2016-07-16T21:46:46.390 回答