Laravel 适当的权限

问题描述 投票:0回答:4

我只是尝试将 Laravel 项目更改为在 Nginx 而不是 Apache 上运行,但无法获得正确的权限。真的不知道接下来要尝试什么。目前他们在这里: enter image description here

我什至给了存储文件夹777权限,但没有任何效果。我的博客上有一个管理面板,它总是不断抛出问题

ErrorException in File.php line 190:
chmod(): Operation not permitted

非常感谢任何帮助。

我正在使用 Nginx、PHP 7.0、MySQL。该网站是使用 Laravel 框架编写的。

laravel nginx php-7
4个回答
22
投票

这会起作用,因为

777
存在安全风险

 sudo chmod -R o+w storage/

 sudo chmod -R 775 storage/

12
投票

首先,检查Nginx www conf文件中分配的用户

/etc/php/7.0/php-fpm.d/www.conf

用户可能是
www-data
_www
或任何其他。

然后将项目文件夹的所有权更改为

sudo chown $USER:www-data -R ~/Laravel/PBlog/

然后将文件权限更改为

sudo chmod u=+srwX,g=+srX,o=rX -R ~/Laravel/PBlog/

s
标志意味着,在文件夹内添加/创建的任何文件/文件夹都将具有相同的权限。


3
投票

根据您启动项目的方式,存储文件夹上通常已经有一个 775 标志,另一个简单的解决方法是使用

usermod
-aG
选项将您的 Web 服务器用户添加到您的组中:

usermod -aG $USER www-data


3
投票

我发现解决这个问题的最短方法:

sudo chown -R $USER:www-data storage bootstrap/cache
© www.soinside.com 2019 - 2024. All rights reserved.