You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google App Engine仅显示index.php文件问题排查求助

排查App Engine PHP应用所有请求返回index.php的问题

针对你的情况,以下是具体排查和解决步骤:

  • 检查app.yaml的缩进格式
    YAML对缩进要求严格,你提供的配置中handlers项存在多余缩进,导致该路由规则未被正确加载。正确的层级应该是handlers与runtime同级,示例如下:

    runtime: php81
    handlers:
      # Serve php scripts.
      - url: /(.+\.php)$
        script: \1
    

    确保所有子项(如url、script)的缩进一致,推荐使用2或4个空格,不要混用制表符。

  • 验证路由规则的有效性
    确认正则表达式/(.+\.php)$能覆盖你需要访问的PHP文件路径:

    • 该规则会匹配所有以.php结尾的路径(如/test.php、/api.php)
    • script: \1会将匹配到的文件名作为入口脚本,需确保目标文件确实存在于部署目录的根目录
  • 本地测试验证配置
    使用gcloud app serve命令在本地启动应用,尝试访问不同的PHP文件(如http://localhost:8080/test.php):

    • 如果本地能正常响应对应文件,说明配置修复有效,问题出在云端部署的配置同步上
    • 如果本地同样返回index.php,检查是否存在其他未配置的默认路由,或文件是否被.gcloudignore排除
  • 查看云端请求日志
    通过gcloud app logs read命令或Cloud Console的日志面板,查看请求的路由匹配详情:

    • 检查请求是否命中了预期的/(.+\.php)$规则
    • 如果请求被标记为“默认路由”,说明你的handler配置仍未生效,需重新检查app.yaml格式
  • 确认文件状态

    • 确保所有PHP文件名大小写正确(App Engine环境区分大小写)
    • 检查.gcloudignore文件,确认没有误排除需要部署的PHP文件
    • 重新部署应用时,使用gcloud app deploy --verbosity=info查看部署日志,确认所有文件都已上传

内容的提问来源于stack exchange,提问作者Nancy Moore

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 00:42:31