【发布时间】:2015-06-10 11:33:25
【问题描述】:
当我将 php 文件部署到 GAE 时,file_exists 函数不起作用。如果我使用 Google App Engine Launcher 从我的计算机本地测试完全相同的代码,它就可以工作。这是 PHP 和 app.yaml 文件
indexTest.php
<?php
DEFINE("TESTFILE", 'testfile.txt');
echo TESTFILE.'<br>';
$doesTheFileExist = file_exists(TESTFILE);
echo '$doesTheFileExist: ' . $doesTheFileExist. '<br>';
if (!file_exists(TESTFILE)) {
echo 'I guess it doesnt exist';
}
RETURN;
app.yaml
application: application-name
version: 1
runtime: php55
api_version: 1
threadsafe: true
handlers:
- url: /favicon.ico
static_files: favicon.ico
upload: favicon.ico
- url: /google-api-php-client
script: google-api-php-client
- url: /testfile.txt
static_files: testfile.txt
upload: testfile.txt
- url: /
script: indexTest.php
本地输出
GAE 上的输出
为什么在本地测试的时候可以,部署后就不行了?
我尝试更改文件的位置并更改 app.yaml 文件,并添加如下内容:
- url: /templates
static_dir: templates
并将文件放在 templates 目录中。但同样,它在本地主机中工作,但未部署到 App Engine。
【问题讨论】:
-
文件在哪里?
-
位于根目录。
标签: php google-app-engine app.yaml