laravel - VestaCP 上的 Laravel 抛出错误 500。我应该更新什么文件来解决这个问题?
问题描述
当我尝试访问我的网站时,当我查看 domain.com.error.log 时出现此错误:
PHP Fatal error: require(): Failed opening required '/home/<user/web/<domain>/public_html/../vendor/autoload.php
我的 laravel 项目中的文件被放入域文件夹中,公共文件夹中的文件被插入到 /public_html 文件夹中。我已经尝试过 composer update、generate key 以及人们之前在这里建议的所有其他 composer 命令。
我已将所有目录权限设置为 777,因此此错误不可能是因为缺少权限。
如果您需要任何其他信息,请询问,已经尝试解决此问题 4 天。
编辑:解决了这个问题,它出现是因为 php 无权访问不在 public_html 中的文件。因此,这可以通过将所有项目放入 public_html 文件夹或更新服务器规则以允许 php 访问包含项目的文件夹来解决。
解决方案
您需要从 www.getcomposer.org安装 composer
composer dump-autoload
composer install --no-dev --no-interaction --prefer-dist --optimize-autoloader
php artisan cache:clear
php artisan route:cache
php artisan view:clear
php artisan migrate --force
推荐阅读
- .net-core - 如何从 .netcore 中的令牌中删除“http://schemas.xmlsoap.org/ws/2005/05/identity/ urls”
- python - 第二次访问数据库后SQLite图像格式错误
- azure-devops - 如何在 Azure DevOps 项目中重命名 TFVC 存储库?
- c++ - 了解智能指针但错误:未分配被释放的指针
- python - 如何使用 python 和 selenium 将数据从列表输入到网站?
- c++ - 我应该如何在嵌套类中正确使用朋友声明?
- android - gradle sync failed with 1 warning 请通过将 google-services 插件的版本更新为 16.0.4 来修复版本冲突
- spring-boot - 如何在服务器端(JAVA)刷新 access_token?
- java - 添加 Google Play 服务和 Proguard 时出现警告?
- flutter - 颤动中地图视图包的标签问题