CentOS 对所有 https URL 返回 403

CentOS 对所有 https URL 返回 403

我们发现 CentOS 6 VPS 上的所有 https URL 在多个虚拟主机上都返回 403。我应该寻找某个配置设置来检查发生了什么?或者帮助调试的日志?

答案1

您的日志已输入/var/log/httpd(您需要成为“root”才能查看它们)。你会在那里找到access_log和。error_log

您是否设置/检查了文件的权限?小组apache至少应该能够阅读它们。例如,如果我(用户gareth)有一个网站/var/www/html:-

$ls -l /var/www/html
-rwxr-----. gareth apache 30 Jun 23 13:35 test.html

如您所见,我有权rw访问该文件,并且 apache 服务也有权r访问。还:-

$ls -ld /var/www/html
drwx--x---. gareth apache 4096 Jun 23 13:35 /var/www/html/

包含该网站的目录必须具有xapache组的权限,以便apache可以读取该目录。同样,它的父目录也必须具有x权限集。还有父母的父母等等。

如果文件的权限正常,请检查这SELinux不是罪魁祸首。跑步:-

`setenforce 0`

然后再试一次。如果现在有效,则问题是由于SELinux.记得运行:-

`setenforce 1`

重新启用 SELinux。

答案2

403状态码表示客户端无法访问所请求的资源。这通常表明 URL 引用的文件和/或目录不具有允许 HTTP 服务器访问它的权限。

确认 HTTP 服务器使用的用户名/组具有足够的权限来访问此目录。此外/var/log/httpd/access_log,例如,如果 HTTP 服务器是 Apache,您应该在 中看到有关此内容的信息。

Apache 的用户/组在配置文件/etc/httpd/conf/httpd.conf.

例子

$ grep -E "^User|^Group" /etc/httpd/conf/httpd.conf 
User apache
Group apache

答案3

看起来是 mod-spdy-beta_current_x86_64.rpm 的安装出了问题。删除它并重新启动服务器即可解决问题。

相关内容