autoload.php将无法在我的网络服务器上工作

autoload.php将无法在我的网络服务器上工作

问题描述:

所以我按照如何使用作曲家安装谷歌的API客户端的指示。autoload.php将无法在我的网络服务器上工作

当我尝试在我的网页浏览器,只有这个代码

<?php 

require_once 'vendor/autoload.php'; 

我从我的托管服务提供商这些错误

[03-Aug-2017 23:46:22 UTC] PHP Warning: require(/home/michmarket/public_html/vendor/composer/../guzzlehttp/psr7/src/functions_include.php): failed to open stream: No such file or directory in /home/michmarket/public_html/vendor/composer/autoload_real.php on line 66 [03-Aug-2017 23:46:22 UTC] PHP Fatal error: require(): Failed opening required '/home/michmarket/public_html/vendor/composer/../guzzlehttp/psr7/src/functions_include.php' (include_path='.:/opt/alt/php56/usr/share/pear:/opt/alt/php56/usr/share/php') in /home/michmarket/public_html/vendor/composer/autoload_real.php on line 66

我试图确保所有的打开文件通过在我的命令提示符下运行此文件来更新文件API文件。

$ composer require google/apiclient:^2.0 

当我这样做时,我的命令提示符表示我的所有文件都是最新的。任何想法,为什么我仍然得到错误?

+0

尝试删除'vendor'目录并执行新的'composer install'。请注意在此过程中显示的任何警告/错误消息。 – ceejayoz

+0

我刚刚删除了我的整个供应商文件夹,并在我的目录中运行了作曲家安装,但我得到了完全相同的错误。 – ChaseRun

+0

'vendor/guzzlehttp/psr7/src/functions_include.php'文件是否存在? – ceejayoz

如果您不能运行

$ composer install 
您的Web服务器上

,那么你就需要部署服务器上运行的命令后你vendor目录转移到Web服务器。

如果您的部署服务器是您的本地机器,请尝试使它与平台要求尽可能接近地匹配Web服务器(PHP版本,您可以在本地运行比在Web服务器上更新的版本),或者参考到https://getcomposer.org/doc/06-config.md#platform

Lets you fake platform packages (PHP and extensions) so that you can emulate a production env or define your target platform in the config. Example: {"php": "5.4", "ext-something": "4.0"}.

注意您可能要优化自动加载,以及,看看https://getcomposer.org/doc/articles/autoloader-optimization.md#autoloader-optimization