【问题标题】:Error deploying PHP application to App Engine将 PHP 应用程序部署到 App Engine 时出错
【发布时间】:2022-01-16 07:35:27
【问题描述】:

我的应用只有两个文件:index.php 和 app.yaml 在同一个目录下。每次尝试将应用程序部署到 App Engine 时,我都会收到错误消息。

【问题讨论】:

  • 这不是一个有用的错误,是吗?请确认您使用的是 App Engine 灵活(非标准)?当你说“Hello World”时,是谷歌教程(github.com/GoogleCloudPlatform/php-docs-samples)吗?您是否启用了计费?请尝试运行gcloud app deploy --verbosity=debug
  • Daz,我的应用程序只是一个 index.php 文件,里面有“echo hello world”,还有一个 app.yaml 文件,runtime: php env: flex runtime_config: document_root: / If I change document_root其他任何内容或将其留空都会给我一个错误。
  • App Engine 期望应用程序成为网络服务器。它期望接收一个侦听端口8080并支持HTTP 的容器。您将无法仅部署 echo hello world。看看我包含的 Hello World 示例。也许试试?
  • 我的应用不是网络服务器。所以问题出在我的 app.yaml 文件上。显然您不能将它与您的应用程序放在同一个目录中,所以我这样做了:client > app > web > index.php + client > app > app.yaml 并在 app.yaml 中我将其更改为 document_web: web - Everything工作正常,网站现在运行正常。
  • 发布您的解决方案并附上解释,以帮助其他有类似问题的人。

标签: google-app-engine google-cloud-platform google-cloud-sdk


【解决方案1】:

你的文件结构必须是某种方式。

  • [folder1/]
  • [folder1/web/]
  • [folder1/app.yaml]

index.php

<?php echo "hello world"; ?>

app.yaml

runtime: php
env: flex

runtime_config:
  document_root: web

也许这是不正确的,但这是我让它工作的唯一方法。

【讨论】:

    猜你喜欢
    • 2017-11-27
    • 2019-07-12
    • 1970-01-01
    • 2012-06-25
    • 1970-01-01
    • 2011-07-11
    • 2012-05-13
    • 1970-01-01
    • 2016-09-15
    相关资源
    最近更新 更多