这是我第一次使用 Amazon EC2。我正在运行一个使用 Apache 2.4.6 的服务器,当我访问公共 DNS 或弹性 IP 地址时,我似乎无法让它工作。我收到的错误消息是:
禁止您无权访问此服务器上的 /index.html。
我已经检查过这个文件的权限(755)。VirtualHost
我的文件中有一个块httpd.conf
,如下所示:
Listen 80
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName my-ec2-public-dns-url
</VirtualHost>
我的 AWS 安全组设置如下任何地方适用于 HTTP 和 HTTPS。
当我检查错误日志时,它显示:
AH00132:文件权限拒绝服务器访问:/var/www/html/index.html
我究竟做错了什么?
答案1
尝试检查文件的现有权限:
ls -l index.html
如果有必要的话,请修复它们:
chmod 644 index.html
如果所有标准权限都正确,但您仍然得到Permission Denied error
,则应检查扩展权限。例如,您可以使用命令setenforce 0
关闭 SELinux 并检查问题是否消失。如果是,ls -alZ
可以使用 来查看 SELinux 权限并chcon
修复它们。
例如:
sudo chcon -R -v -t httpd_sys_rw_content_t index.html