几天前,我将文件上传到我的cent OS服务器上,运行正常,但是从今天开始我得到了错误。
流或文件“ /var/www/html/hasibtest/storage/logs/laravel.log” 无法打开:无法打开流:权限被拒绝
我的日志文件具有777权限的地方,我也在尝试0755、0644
谁能告诉我如何解决此问题?
答案 0 :(得分:3)
尝试更改文件夹的所有者并更改文件夹的权限
sudo chown -R www-data storage/logs/ sudo chmod g+w -R storage/logs
现在将所有规则应用于子文件夹文件夹日志
cd storage/logs sudo find . -type d -exec chmod g+s '{}' +
答案 1 :(得分:2)
首先尝试执行此操作以递归地获取目录的所有权
sudo chown -R $USER:www-data storage
sudo chown -R $USER:www-data bootstrap/cache
然后通过此按钮设置适当的目录访问权限
chmod -R 775 storage
chmod -R 775 bootstrap/cache
从不将目录权限设置为777(除非您知道自己在做什么)
答案 2 :(得分:1)
在Centos或Red Hat上
先做
# sestatus
如果状态为启用,则必须将其禁用
# setenforce Permissive
对我来说,组和用户都是nginx
chown -R nginx:nginx storage bootstrap/cache
chmod -R 775 storage
chmod -R 775 bootstrap/cache
答案 3 :(得分:1)
这应该对您有帮助
chcon -R -t httpd_sys_content_t $SITE_PATH
chcon -R -t httpd_sys_rw_content_t $SITE_PATH
答案 4 :(得分:0)
检查当前用户:<?php echo exec('whoami'); ?>
我在ubuntu上使用lampp,因此结果为 daemon
然后运行几个命令,谢谢@Shobi
sudo chown -R daemon:www-data storage
sudo chown -R daemon:www-data bootstrap/cache
现在可以使用
答案 5 :(得分:0)
请注意,您必须同时更改两者。所有权和权限,以及这两个文件夹中的文件夹。 这应该影响到所有孩子
sudo chown -R apache storage
sudo chown -R apache bootstrap/cache
and
chmod -R 775 storage
chmod -R 775 bootstrap/cache
您可以检查所有者
ls -lr
该命令将显示谁拥有所有权。
答案 6 :(得分:0)
我发现最简单的解决方法:
php artisan storage:link
sudo chown -R $USER:www-data storage bootstrap/cache