Apache2 / Debian 9 的写入权限被拒绝
Write permission denied on Apache2 / Debian 9
我有一个 VPS 和 apache2 php-fpm 运行ning prestashop,它已经工作了很多年,但突然之间,prestashop 遇到了权限问题。
Apache 的用户和组设置为 "www-data" 与 www 文件夹中的所有文件和文件夹相同。所有权限都设置为 755 和 644,但 cache/smarty(必须将它们设置为 777,以便商店可以继续工作。)
我已经检查过这是一个权限问题,因为 prestashop 无法从后台重新生成 .htaccess 文件(除非我将其设置为 777)。
我不确定要检查什么或我能为您提供什么。欢迎任何帮助。谢谢大家的宝贵时间。
编辑
我一直在检查 "apache2" 的流程,所有流程都是由 www-data 运行 提供的。
Steadweb 告诉我检查 php-fpm,似乎就是这个问题。但我不确定在哪里更改它。
已在 Debian 9.7
上测试,编辑以下文件:
/etc/php/7.0/fpm/pool.d/www.conf
并找到以下内容,其中声明了 user
/ group
。更新如下:
...
user = www-data
group = www-data
您需要重新启动 apache
/ php-fpm
进程
ressystemctl restart php7.0-fpm apache2
备注
- 这是不好的做法,因为您正在为
php-fpm
开放权限。我会确保特定目录/文件具有写权限。
- 将您的网站目录设置为您的用户的所有权
chown -R user:www-data /path/to/website
- 使用以下命令为您的网站设置目录/文件的权限
cd /path/to/website
find -type d -exec chmod 750 {} \;
find -type f -exec chmod 644 {} \;
- 然后,打开特定 个需要可写权限的文件/目录。
我有一个 VPS 和 apache2 php-fpm 运行ning prestashop,它已经工作了很多年,但突然之间,prestashop 遇到了权限问题。
Apache 的用户和组设置为 "www-data" 与 www 文件夹中的所有文件和文件夹相同。所有权限都设置为 755 和 644,但 cache/smarty(必须将它们设置为 777,以便商店可以继续工作。)
我已经检查过这是一个权限问题,因为 prestashop 无法从后台重新生成 .htaccess 文件(除非我将其设置为 777)。
我不确定要检查什么或我能为您提供什么。欢迎任何帮助。谢谢大家的宝贵时间。
编辑
我一直在检查 "apache2" 的流程,所有流程都是由 www-data 运行 提供的。
Steadweb 告诉我检查 php-fpm,似乎就是这个问题。但我不确定在哪里更改它。
已在 Debian 9.7
上测试,编辑以下文件:
/etc/php/7.0/fpm/pool.d/www.conf
并找到以下内容,其中声明了 user
/ group
。更新如下:
...
user = www-data
group = www-data
您需要重新启动 apache
/ php-fpm
进程
ressystemctl restart php7.0-fpm apache2
备注
- 这是不好的做法,因为您正在为
php-fpm
开放权限。我会确保特定目录/文件具有写权限。 - 将您的网站目录设置为您的用户的所有权
chown -R user:www-data /path/to/website
- 使用以下命令为您的网站设置目录/文件的权限
cd /path/to/website
find -type d -exec chmod 750 {} \;
find -type f -exec chmod 644 {} \;
- 然后,打开特定 个需要可写权限的文件/目录。