谷歌应用程序引擎应用程序在localhost上工作正常,但URL不显示任何PHP

时间:2015-05-09 05:45:20

标签: php google-app-engine

在变得非常沮丧之后好吧,我不明白为什么我的应用程序没有启动。我把它托管在一个网站上,当我在我的localhost上打开它时,一切都运行得很好。但是当我点击它进行部署时,URL上只有一个白页。我甚至不知道从哪里开始寻找问题。日志显然无趣。虽然我不完全确定这意味着什么?

application: never-never-93903
version: 1
runtime: php55
api_version: 1

handlers:

- url: /(.+)
  static_files: public/\1
  upload: public/(.*)

- url: /
  script: public/index.php

- url: /php/
  script: public/php/send_email.php

有没有人在哪里寻找问题有任何提示或帮助? 这是我感兴趣的app.yaml文件。

li {
    display: inline;
    background-color: #ff0000;
}

.horizontal-list a {
    float: left;
    width: 8em;
    text-decoration: none;
    color: white;
    background-color: #0094ff;
    padding: 0.2em 0.4em;
    border-right: 1px solid white;
    text-align: center;
}

.horizontal-list a span {
    display: none;
    position: relative;
    align-self: absolute;
}

.horizontal-list a:hover span {
    display: block;
    width: 100px;
    padding: 10px;
    color: #FFF;
    background: #535663;
    font-size: 11px;
    text-decoration: none;
    position:absolute;
    margin-right:auto 0;
    margin-left:auto 0;

一切正常,直到我将它从index.html切换到index.php。我想做的只是添加联系表格。

1 个答案:

答案 0 :(得分:1)

尝试将index.php文件放在项目根目录中的一个级别,并将app.yaml文件更新为script:index.php(而不是script:public / index.php)。我想知道重叠目录是否导致问题。

您的第一个指令是创建一个不可执行的文件目录,作为静态页面(而不是已处理和提供的输出)。因此,默认情况下,为静态处理程序上载的文件不可读取应用程序执行。

查看以下文档: https://cloud.google.com/appengine/docs/php/config/appconfig#PHP_app_yaml_Static_file_handlers

具体来说,就是“application_readable”指令。这将是另一种选择 - 使整个目录应用程序可读;但是,我建议将它们放在不同的目录中以便更好地组织。

当然,如果您不希望将它们放在项目根目录中以用于组织目的,您也可以将PHP文件移动到完全不同的目录中。