PHP Google App Engine YAML 找不到目录

Posted

技术标签:

【中文标题】PHP Google App Engine YAML 找不到目录【英文标题】:PHP Google App Engine YAML not finding directories 【发布时间】:2013-11-12 01:18:44 【问题描述】:

我的 App Engine 没有加载我的 css、javascript 或图像。我的 index.php 和 login.php 是迄今为止我能够找到的唯一文件,但是我的其他文件使用会话来防止未经授权的访问,所以我不确定我是否能够在不登录的情况下访问它们首先。

目录结构是从app.yaml文件到对应的文件。

我正在使用 Google 的 App Engine 和 PHP,我的 YAML 代码如下

handlers:
- url: /index.php
  script: content/home/index.php

- url: /login.php
  script: content/home/login.php

- url: /control.php
  script: content/home/control.php

- url: /admin.php
  script: content/home/admin.php

- url: /logout.php
  script: content/home/logout.php

- url: /checkaccess.php
  script: content/home/checkaccess.php

- url: /register.php
  script: content/home/register.php

- url: /managemodule.php
  script: content/home/managemodule.php

- url: /manageuser.php
  script: content/home/manageuser.php

- url: /update.php
  script: content/home/update.php

- url: /.*
  script: content/home/index.php

- url: /images
  script: images

- url: /stylesheets
  static_dir: system/templates/stylesheets

- url: /includes
  script: system/templates/includes

- url: /scripts
  script: system/templates/javascript

我尝试将 static_dir: 和 script: 用于样式表、javascript 和图像。奇怪的是,包含的内容可以正常工作,没有问题,但我无法让我的图像、css 或脚本正常工作。

我试图检查这些文件,但没有找到它们,但我知道它们是通过 appcfg.py 上传的。在我的日志中,它指出“没有处理程序匹配此 URL。”

如果有人有很棒的自述文件或有关 YAML 的任何其他信息,我将不胜感激。我已经从谷歌阅读了几次 YAML 描述并检查了 YAML 网站,我觉得我做得对。我尝试了另一个项目(简单得多),它没有任何问题。

【问题讨论】:

【参考方案1】:
handlers:
- url: /index.php
  script: index.php

- url: /login.php
  script: login.php

- url: /control.php
  script: control.php

- url: /admin.php
  script: admin.php

- url: /logout.php
  script: logout.php

- url: /checkaccess.php
  script: checkaccess.php

- url: /register.php
  script: register.php

- url: /managemodule.php
  script: managemodule.php

- url: /manageuser.php
  script: manageuser.php

- url: /update.php
  script: update.php

- url: /images
  static_dir: images

- url: /stylesheets
  static_dir: stylesheets

- url: /includes
  script: system/templates/includes

- url: /scripts
  static_dir: scripts

结束了工作,但如果我仍然有更多错误,我不会感到惊讶。把这个贴出来,以防其他人偶然发现这个。我上面的 /.* 出了什么问题。我删除了它并放入了 static_dir 并且它起作用了......

【讨论】:

据我所知,这是 beta PHP GAE 中缺少的不幸功能之一。 如果我上次部署 GAE 应用程序时还没有投票赞成这个答案,我会再次投票!

以上是关于PHP Google App Engine YAML 找不到目录的主要内容,如果未能解决你的问题,请参考以下文章

PHP Google App Engine YAML 找不到目录

如何在 Google Cloud App Engine 上运行 PHP 服务

Google App Engine PHP灵活环境中的URL处理程序

Google App Engine 环境设置

在Google App Engine Standard中配置嵌套的静态文件夹 - PHP环境

使用 PHP 有效地使用 Google App Engine 发送大量电子邮件?