我在使用Google App Engine上的服务器端口8080尝试将我的PHP应用程序转移并运行到本地环境时遇到问题。 我有app.yaml如何工作的问题。以下是y app.yaml的以下代码:
application: huge
version: 1
runtime: php55
api_version: 1
handlers:
- url: /.*
script: public/index.php
- url: /login/index
script: application/view/login/index.php
第一个网址和脚本工作。但是我的应用程序与XAMPP上的应用程序不同。 PHP应用程序结构化为MVC,这意味着PHP文件不在根目录中,而是在有组织的文件夹中,我在XAMPP中使用laravel和composer。我现在将此应用程序转移到GAE。主根文件位于public / index.html中,但所有其他文件都在文件夹中,您可以看到我尝试在第二个脚本调用中调用一个页面,如application/view/login/index.php
。此外,public/css
文件夹中的css也未加载,因此样式已从应用程序中删除。我是否必须告诉谷歌应用程序引擎每一条路线?如果是这样,有人可以告诉我一个例子,第二个调用将如何工作以及我如何调用我的CSS工作。
答案 0 :(得分:0)
app.yaml
文件中处理程序的顺序很重要,将使用第一个模式匹配。
在您的情况下/login/index
实际上匹配/.*
,因此它将传递给第一个处理程序。要做你期望的事情,你需要交换处理程序的顺序。
您可能还需要为非php文件添加静态文件/目录处理程序(例如,对于css文件)
您应该花一些时间熟悉配置php应用程序:https://cloud.google.com/appengine/docs/php/config/appconfig