【发布时间】:2019-04-25 20:56:39
【问题描述】:
我有一个在本地主机上运行良好但在云服务器上抛出错误的 PHP。在 localhost 上,脚本运行并从数据存储中获取数据。
这是导致问题的行:
require __DIR__ . '/../../vendor/autoload.php';
// this is the line5 of datastore.php
我使用以下代码部署它: gcloud app deploy --promote --stop-previous-version app.yaml
部署到 Google AppEngine 后,我得到了这个:
警告: 要求(/base/data/home/apps/myproject/projectID/dialpad_research/api/../../vendor/autoload.php): 无法打开流:中没有这样的文件或目录 /base/data/home/apps/myproject/projectID/dialpad_research/api/datastore.php 在第 5 行致命错误:require():需要打开失败 '/base/data/home/apps/myproject/projectID/dialpad_research/api/../../vendor/autoload.php' (include_path='.;/base/data/home/apps/myproject/projectID/;/base/alloc/tmpfs/dynamic_runtimes/php55_dynamic/ef537742f8701211/sdk') 在 /base/data/home/apps/myproject/projectID/dialpad_research/api/datastore.php 在第 5 行
这个文件在另一个 PHP 文件中也是必需的。 但是即使我尝试直接访问这个文件,我仍然会得到同样的错误。
我应该以不同的方式添加需求代码吗?
【问题讨论】:
-
你检查过文件权限了吗?
-
看起来你正在使用 Composer;你在部署时真的做了
composer install吗? -
是的,我安装了 composer。我在部署之前做了作曲家安装。你的意思是作曲家安装“同时”部署?
-
如果不知道你是如何部署的,那是不可能的;看起来文件不存在,所以在部署过程中的某个地方,您需要确保它们被添加。
-
使用任何框架?
标签: php google-app-engine google-cloud-platform