【问题标题】:PHP runtime issue with "gcloud preview app" when running on Linux在 Linux 上运行时出现“gcloud preview app”的 PHP 运行时问题
【发布时间】:2014-10-06 22:43:51
【问题描述】:

我正在尝试在 debian linux 机器上使用新的 gcloud 应用引擎命令 (https://developers.google.com/cloud/sdk/gcloud-app)。

我的应用有一个 PHP 模块,当我尝试运行时:

gcloud preview app run .

我收到以下错误:

错误:PHP 运行时不可用 Traceback(最近调用 最后):文件 "/home/arthur/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/php_runtime.py", 第 224 行,在 new_instance 中 self._runtime_config_getter().application_root) 文件“/home/arthur/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/php_runtime.py”, 第 149 行,在 _check_environment '标志 (%s) 不存在。' % php_executable_path) _PHPBinaryError: 用--php_executable_path 标志() 指定的路径不存在。

问题是 gcloud preview app 命令无法识别 --php_executable_path 标志。 所以目前没有办法在Linux上使用这个命令。

请注意,如果我直接使用 dev_appserver.py 没有问题。

【问题讨论】:

    标签: php google-app-engine google-cloud-platform gcloud


    【解决方案1】:
    1. php-cgi 可执行文件应该存在于 google-cloud-sdk/bin/bootstrapping/ 目录中,其中 google-cloud-sdk 是您的安装目录,该文件在那里吗?

    2. 确保您已安装 Cloud SDK 的 PHP 组件,如果您安装了 gcloud components listApp Engine SDK for Python and PHP 是否在 Individual Components 下列为已安装?

    【讨论】:

    • Linux 的引导目录中不存在 php-cgi 可执行文件,但它在 OS X 和可能的 Windows 上存在。是的,SDK 的 PHP 组件已安装。
    【解决方案2】:

    PHP 可执行文件在 Linux 上不随 SDK 一起分发,因此您需要自行安装。但是,gcloud 目前不允许您配置查找 php 运行时的位置。我们将在不久的将来发布 gcloud 更新,专门解决 PHP 兼容性问题(这肯定会被涵盖)。同时,您可以使用 dev_appserver.py 来运行您的 PHP 模块,并使用 --php_executable_path 标志指向您安装的 PHP 运行时。

    【讨论】:

    • 我正在运行 gcloud SDK 0.9.35 (Ubuntu 14.04)。 gcloud preview app run --php-executable-path=/usr/bin/php5-cgi . 工作正常。我似乎找不到保存该 PHP 路径的方法,因此我不必每次都输入它。关于如何将其设置为 SDK 中的全局配置的任何想法?
    猜你喜欢
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多