刚刚移动了我的laravel网站到我的现场服务器,并立即面临这个错误。
完整的错误是:
Warning: require(/var/sites/b/beta.buildsanctuary.com/public_html/local/bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in /var/sites/b/beta.buildsanctuary.com/public_html/local/bootstrap/autoload.php on line 17
Fatal error: require(): Failed opening required '/var/sites/b/beta.buildsanctuary.com/public_html/local/bootstrap/../vendor/autoload.php' (include_path='.:/usr/local/lib/php') in /var/sites/b/beta.buildsanctuary.com/public_html/local/bootstrap/autoload.php on line 17
第17行是:
需要目录.'/../vendor/autoload.php';
文件夹结构为:
beta.buildsanctuary.com
-- public_html
-- subdomains
-- beta
-- local
-- bootstrap
-- vendor
有没有人能帮上忙,哪里出了问题?以及如何解决?拔出我的头发,尝试各种路径。
谢谢克雷格。
5条答案
按热度按时间7uzetpgm1#
我强烈认为,一个损坏的缓存是原因,我不能100%肯定,但似乎它很可能是罪魁祸首。
因此,如果有人遇到类似的问题,我建议采取以下步骤:
1.删除供应商文件夹
1.删除编写器.锁定
1.运行命令
composer clearcache
(或清除缓存)1.运行
composer install
我希望这能帮上忙。
e0bqpujr2#
从错误中可以看出,PHP正在查找
也就是
该文件夹不存在。我认为您发布的文件夹结构是错误的。
不管怎样,试试这个:
7uhlpewt3#
我遇到过同样的问题,那就是Composer还没有安装在服务器上,所以它在您的项目上创建的目录结构也不存在。
首先你必须在你的服务器上安装composer,按照composer项目网页https://getcomposer.org/上给出的系统说明操作。
接下来,您必须在终端或cmd中转到项目的基本文件夹。
在那里,您可以使用命令行composer init,它将指导您在项目中创建composer.json文件。
创建composer.json文件后,必须执行命令行composer install。
此命令行将创建您在composer.json上编写的所有依赖项,还将创建文件夹结构,以便您需要的代码可以找到正确的路径。
最后,你必须根据你的php文件的当前文件夹结构位置,将重定向引用到文件夹供应商。
如果你要找信息,http://www.phptherightway.com/真的很有帮助。
628mspwn4#
只需运行以下命令,它会自动安装必要的依赖项:
编写器安装
zbsbpyhn5#
我有同样的问题时,我已经迁移了drupal网站到新的服务器...为了解决这个问题,我只是用 composer 命令:
1.进入网站目录的第一张CD,EX:
cd /var/www/your_website
1.运行composer安装drupal 8依赖项,它需要在网站目录;
composer install
如果您使用sudo命令,请确保
.../vendor
目录具有正确的权限,可以由/var/www
目录中的用户访问;sudo composer install
这基本上将解决
.../public_html/autoload.php on line 14
问题!