403更改文件和文件夹的权限后禁止

时间:2018-10-18 10:40:52

标签: php linux magento file-permissions

Magento正式建议将所有文件夹的权限设置为700,将文件的权限设置为600。(Source

他们指示我们执行以下命令来设置权限:

find . -type d -exec chmod 700 {} \;
find . -type f -exec chmod 600 {} \;

但是,现在尝试访问该网站时,我被禁止使用403。

我应该改为766(文件夹)和666(文件)吗?

2 个答案:

答案 0 :(得分:1)

这在很大程度上取决于系统的配置。

使用问题命令(以root用户身份执行)设置所有权限时,仅允许root用户访问这些文件。

权限掩码如下:

000
^^^
|||
||+--- Other
|+---- Group
+----- Owner     

因此具有根所有权的600权限掩码将不允许网络服务器的用户(或php进程的用户)读取或访问这些文件。

第一步是找出正在运行您的Web服务器的用户(Apache,Nginx或您正在使用的任何用户),以及分配给您的php进程的用户(以防您使用类似php-fpm之类的东西)。

如果您使用的是Ubuntu系统,则该用户很有可能是www-data。但是您应该确保,因为细节取决于配置。

假设您拥有的用户为www-data,则转到运行chmod的目录并更改所有文件,使其归该用户所有:

chown -R www-data: {.??,}*

稍后您应用问题中的权限,它应该可以工作。

注意:出于安全考虑,这可能不是 I 进行安装的方式,但这超出了问题的范围。

答案 1 :(得分:-1)

您应该这样更改所有权:

sudo adduser <username> www-data
sudo usermod -a -G <username> www-data
sudo chown :www-data /var/www -R
sudo chmod g+rwX /var/www -R
sudo chmod g+s /var/www

还设置了magento所需的文件和文件夹权限

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 550 mage

希望这些帮助。