我是Laravel的新手。我试图打开http://localhost/test/public/,我得到了异常处理程序中的错误。我四处搜索,并更改了存储目录的权限,chmod -R 777 app/storage但无济于事。我debug=>true进入app.php并访问了该页面,并在异常处理程序中遇到了错误:无法打开流或文件“ /var/www/html/test/app/storage/logs/laravel.log”:打开流失败:/ var / www / html / test / bootstrap / compiled中的权限被拒绝。 php:8423然后,我使用命令更改了存储目录的权限,chmod -R 644 app/storage并且“异常处理程序中的错误”错误消失了,并加载了页面。但是在那里,我得到了这个:file_put_contents(/var/www/html/laravel/app/storage/meta/services.json):无法打开流:权限被拒绝
3 回答
杨__羊羊
TA贡献1943条经验 获得超7个赞
vsmoraes的建议对我有用:
Laravel> = 5.4
php artisan cache:clear
chmod -R 777 storage/
composer dump-autoload
Laravel <5.4
php artisan cache:clear
chmod -R 777 app/storage
composer dump-autoload
注意:请勿在任何远程服务器(开发或生产)上执行此操作
当我问这个问题时,这是在虚拟机上运行的本地主机上的问题。因此,我认为安装777足够安全,但是,当人们说您应该寻找其他解决方案时,他们是正确的。首先尝试775
Qyouu
TA贡献1786条经验 获得超11个赞
您不应该授予777权限。这是安全隐患。对于Ubuntu用户,在Laravel 5中,我建议递归地更改目录存储的所有者:
请尝试以下操作:
sudo chown -R www-data:www-data storage
在基于Ubuntu的系统中,www-data是apache用户。
- 3 回答
- 0 关注
- 615 浏览
添加回答
举报
0/150
提交
取消