我将AWS与运行Ubuntu 18和Apache2的EC2实例一起使用。
我需要能够使用FileZilla将文件上传到我的网站。起初我被拒绝了权限,所以我做了:
sudo chown -R ubuntu:ubuntu /var/www
({ubuntu
是使用Ubuntu连接到AWS上服务器的用户名)
现在,我可以使用FileZilla上传和删除文件了,但是当我尝试从浏览器查看网站时,我相信它还会导致以下问题:
403 Forbidden
Forbidden You don't have permission to access / on this server.
我是对的吗?这是错误的原因吗?如何解决?我无法再查看我的网站
答案 0 :(得分:0)
我相信apacahe不再有权访问您的文件。
您可以执行sudo chown -R www-data:www-data /var/www
来回发apache的访问权限。
如果您仍然希望能够通过ubuntu
用户和Filezilla发布到您的网站,则可以:
保留ubuntu
个文件的用户所有者,但www-data
作为组所有者,因此apache仍然可以访问它们。
sudo chown -R ubuntu:www-data /var/www
sudo find /var/www -type d -exec chmod 750 {} \;
sudo find /var/www -type f -exec chmod 640 {} \;
这将为用户ubuntu
提供读/写访问权限,并为www-data
(apache)组提供只读访问权限。
更高级的方法是使用ACL。 Apache仍然是文件的用户和组所有者,并且具有与您的网站相关的某些特定访问权限。另外,ubuntu用户可以使用/var/www
来完全访问sudo setfacl -R -m u:ubuntu:rwx /var/www
目录。
其他解决方案已在AskUbuntu上进行了讨论。