PHP文件的Google App Engine app.yaml处理程序

问题描述 投票:0回答:1

我有一个Codeigniter网站部署到Google App Engine PHP 7环境。然后,我添加了一个名为hello.php的简单PHP文件:

<?php
  echo "Hello World";
?>

并按如下所示放置在网站根目录中:

Root
--application
--css
--js
--system
--hello.php

[当我从Cloud Shell本地主机访问hello.php时,它将完美加载:

https://8080-dot-1234567-dot-devshell.appspot.com/hello.php

[在部署到Google App Engine后访问hello.php时,出现404 Page Not Found错误。由于GAE不支持.htaccess文件,因此我了解处理路由的正确方法是通过app.yaml文件。这是我的app.yaml文件:

runtime: php72

handlers:
- url: /js
  static_dir: js

- url: /css
  static_dir: css

- url: /images
  static_dir: images   

- url: .*
  script: auto

js,css和images文件夹中的所有资产都可以通过GAE访问,但是hello.php无法访问。我应该如何修改此app.yaml文件,以便路由将在GAE上使用hello.php文件?

php codeigniter google-app-engine routing app.yaml
1个回答
0
投票

我能够重现您的问题,并发现该错误似乎与您的php文件的名称有关。

如app.yaml documentation中所述,脚本字段定义了应用程序的入口点,但唯一允许的值为“ auto”,GAE会在index.php或public / index.php上查找控制器,因为您的名为hello.php GAE找不到它。只需更改文件名即可使用。

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.