我的 apache 配置文件中有一个Redirect permanent
,所以我不知道 403 错误何时example.com
开始发生。
# When attempting to fix possible permissions issues due to 403
<Directory "/var/www/example.com/public_html">
Require all granted
</Directory>
#
<VirtualHost *:80>
ServerName webserver1.example.com
ServerAlias example.com www.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/www/example.com/log/error_80.log
CustomLog /var/www/example.com/log/requests_80.log combined
#Redirect permanent / https://www.example.com
</VirtualHost>
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/www.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
ServerName webserver1.example.com
ServerAlias example.com www.example.com
ServerAdmin [email protected]
# <Directory "/var/www/example.com/public_html">
# Allow from all
# Require all granted
# </Directory>
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/www/example.com/log/error_443.log
CustomLog /var/www/example.com/log/requests_443.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName webmail.example.com
ServerAlias email.example.com
Redirect permanent / https://webmail.example.com
</VirtualHost>
<VirtualHost *:443>
ServerName webmail.example.com
ServerAlias email.example.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/www.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
DocumentRoot /usr/share/squirrelmail
</VirtualHost>
几乎所有内容都example.com
在两个片段中起作用VirtualHost
。
我分离了端口 80 和 443 的日志,试图看看那里是否出现任何内容。
编辑:实际错误文本:
禁止访问! 您无权访问请求的目录。没有索引文档或目录受读保护。 如果您认为这是服务器错误,请联系网站管理员。 错误 403 示例.com Apache/2.4.20(Unix)
从error_80.log
:
[DOW MM DD HH:MM:SS YYYY] [:error] [pid PID] [client 127.0.0.1:PORT script '/var/www/example.com/public_html/xmlrpc.php' not found or unable to stat
解决方案:我没有想到要检查我的 /etc/hosts 文件,但我确实example.com
在里面。我主要在我使用的计算机上运行测试,然后推送到我的真实服务器。
答案1
事实证明我example.com
的 /etc/hosts 文件中有这个文件。
这是我的 /etc/hosts 文件:
# # /etc/hosts:主机名静态查找表 # # 127.0.0.1 本地主机.本地域 本地主机 ::1 localhost.localdomain 本地主机 # 以下行是导致问题的原因。如果我有 www.example.com,它也会出现问题。 127.0.0.1 example.com 本地主机 # 文件结束