Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP文件_exists函数在Google应用程序引擎中工作吗?_Php_Google App Engine_App.yaml - Fatal编程技术网

PHP文件_exists函数在Google应用程序引擎中工作吗?

PHP文件_exists函数在Google应用程序引擎中工作吗?,php,google-app-engine,app.yaml,Php,Google App Engine,App.yaml,当我将php文件部署到GAE时,file\u存在函数不起作用。如果我使用谷歌应用程序引擎启动器从我的计算机本地测试完全相同的代码,它就会工作。下面是PHP和app.yaml文件 index.php 本地输出 GAE上的输出 为什么在本地测试时可以工作,而在部署后却无法工作 我尝试更改文件的位置,更改app.yaml文件,并添加如下内容: - url: /templates static_dir: templates 并将文件放入模板目录中。但同样,它在本地主机上工作,但未部署到应用程序

当我将php文件部署到GAE时,
file\u存在
函数不起作用。如果我使用谷歌应用程序引擎启动器从我的计算机本地测试完全相同的代码,它就会工作。下面是PHP和app.yaml文件

index.php 本地输出

GAE上的输出

为什么在本地测试时可以工作,而在部署后却无法工作

我尝试更改文件的位置,更改app.yaml文件,并添加如下内容:

- url: /templates
  static_dir: templates

并将文件放入模板目录中。但同样,它在本地主机上工作,但未部署到应用程序引擎。

如果您希望能够从应用程序中读取静态资源,则需要在处理程序上设置
应用程序可读
标志

当然,如果您实际上不想将该文件作为静态资源提供服务,而只是想能够读取它,那么甚至不要将其包含在app.yaml文件中,它将上载并从您的应用程序访问


请参阅文档。

如果您希望能够从应用程序读取静态资源,则需要在处理程序上设置
应用程序可读
标志

当然,如果您实际上不想将该文件作为静态资源提供服务,而只是想能够读取它,那么甚至不要将其包含在app.yaml文件中,它将上载并从您的应用程序访问


请参阅文档。

如果您希望能够从应用程序读取静态资源,则需要在处理程序上设置
应用程序可读
标志

当然,如果您实际上不想将该文件作为静态资源提供服务,而只是想能够读取它,那么甚至不要将其包含在app.yaml文件中,它将上载并从您的应用程序访问


请参阅文档。

如果您希望能够从应用程序读取静态资源,则需要在处理程序上设置
应用程序可读
标志

当然,如果您实际上不想将该文件作为静态资源提供服务,而只是想能够读取它,那么甚至不要将其包含在app.yaml文件中,它将上载并从您的应用程序访问


请参阅文档。

文件位于哪里?位于根目录。文件位于哪里?位于根目录。文件位于哪里?位于根目录。文件位于哪里?位于根目录。我正在测试对Google的授权,以及对Google Drive的文件创建。PHP中的一个示例使用文件作为在驱动器中创建新文件的基础。所以,我不是在提供文件的内容。我可能不会使用这种策略,而是创建一个空文件,然后将内容写入其中,或者类似的事情。我有点担心应用程序的可读性。我立即认为“安全风险”。“应用程序可读”意味着您可以静态地提供它,也可以从应用程序中读取它-这是必需的,因为通常静态文件由基础结构提供,而不是部署到与应用程序代码相同的位置。如果你不需要静态地提供文件,那么不要将其放在app.yaml文件中。我正在测试对Google的授权,以及对Google Drive的文件创建。PHP中的一个示例使用文件作为在驱动器中创建新文件的基础。所以,我不是在提供文件的内容。我可能不会使用这种策略,而是创建一个空文件,然后将内容写入其中,或者类似的事情。我有点担心应用程序的可读性。我立即认为“安全风险”。“应用程序可读”意味着您可以静态地提供它,也可以从应用程序中读取它-这是必需的,因为通常静态文件由基础结构提供,而不是部署到与应用程序代码相同的位置。如果你不需要静态地提供文件,那么不要将其放在app.yaml文件中。我正在测试对Google的授权,以及对Google Drive的文件创建。PHP中的一个示例使用文件作为在驱动器中创建新文件的基础。所以,我不是在提供文件的内容。我可能不会使用这种策略,而是创建一个空文件,然后将内容写入其中,或者类似的事情。我有点担心应用程序的可读性。我立即认为“安全风险”。“应用程序可读”意味着您可以静态地提供它,也可以从应用程序中读取它-这是必需的,因为通常静态文件由基础结构提供,而不是部署到与应用程序代码相同的位置。如果你不需要静态地提供文件,那么不要将其放在app.yaml文件中。我正在测试对Google的授权,以及对Google Drive的文件创建。PHP中的一个示例使用文件作为在驱动器中创建新文件的基础。所以,我不是在提供文件的内容。我可能不会使用这种策略,而是创建一个空文件,然后将内容写入其中,或者类似的事情。我有点担心应用程序的可读性。我立即认为“安全风险”。“应用程序可读”意味着您可以静态地提供它,也可以从应用程序中读取它-这是必需的,因为通常静态文件由基础结构提供,而不是部署到与应用程序代码相同的位置。如果不需要静态提供文件,则不要将其放入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
- url: /templates
  static_dir: templates