AWS亚马逊Linux EC2示例:apache用户写入目录的权限被拒绝

ui7jx7zq  于 2023-03-13  发布在  Apache
关注(0)|答案(1)|浏览(200)

尝试写入apache用户和组的system/cache目录时,我收到权限被拒绝错误(通过Web浏览器从HTTP:80调用)
我的文件夹权限设置如下:

[ec2-user@ip-172-31-45-8 system]$ ls -lah
total 48K
drwxrwsr-x 10 ec2-user www 4.0K Nov 24 05:05 .
drwxrwsr-x  7 ec2-user www 4.0K Nov 24 04:59 ..
drwxrwsr-x  2 ec2-user www 4.0K Nov 24 05:05 cache
drwxrwsr-x  2 ec2-user www 4.0K Nov 24 04:03 database
drwxrwsr-x  2 ec2-user www 4.0K Nov 24 04:03 engine
-rw-rw-r--  1 ec2-user www  924 Nov 24 04:03 file_merge.php
drwxrwsr-x  2 ec2-user www 4.0K Nov 24 04:03 helper
drwxrwsr-x  2 ec2-user www 4.0K Nov 24 05:02 library
drwxrwsr-x  3 ec2-user www 4.0K Nov 24 04:53 plugins
-rw-rw-r--  1 ec2-user www 3.3K Nov 24 04:03 startup.php

Apache组是这样设置的(我意识到将Apache设置为根组不是一个好主意,但出于测试目的...):

[ec2-user@ip-172-31-45-8 system]$ groups apache
apache : www root wheel ec2-user apache

[ec2-user@ip-172-31-45-8 system]$ groups ec2-user
ec2-user : ec2-user wheel apache www

我有一个脚本尝试写入system/cache/目录,其中ec2-userwww的权限设置为rwx。Apache配置为用途:

User apache;
Group apache;

改变配置以使用www组修复了这个问题,但是我很困惑为什么我不能让它在apache组中工作?

User apache;
Group www;

难道我不理解团队在linux上的工作方式吗?

sr4lhrrt

sr4lhrrt1#

我不是一个熟练的Linux或AWS用户,但请尝试将apache用户添加到www组:
用户名-a -G www apache
然后重新启动Apache:

sudo service httpd restart

sudo service apache2 restart

然后确认Apache是www组的一部分

grep 'www' /etc/group

这似乎纠正了我的问题。仅供参考,我按照these instructions设置了我的EC2服务器。

相关问题