![将子域名的 A 记录指向其他服务器的 IP 后出现 403](https://linux22.com/image/777666/%E5%B0%86%E5%AD%90%E5%9F%9F%E5%90%8D%E7%9A%84%20A%20%E8%AE%B0%E5%BD%95%E6%8C%87%E5%90%91%E5%85%B6%E4%BB%96%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%20IP%20%E5%90%8E%E5%87%BA%E7%8E%B0%20403.png)
我有两台服务器X和是。
服务器 X:
我有一个子域名的 VHOST测试.api.konfigurator.company.de指向仅具有索引.html包含单词“它有效!”。
首先我在本地测试了它,通过编辑我的主办方文件。这样就成功了,如果我调用,就会显示“成功了!”文本测试.api.konfigurator.company.de从浏览器。
因此这确保了 VHOST 可以正常工作。我再次从“hosts”文件中删除了该记录。
服务器Y:
我创建了一个子域名测试.api.konfigurator.company.de来自 cpanel。
创建子域的过程也创建了 A 记录。
我将此额外的 A 记录添加到company.de
:
test.api.konfigurator.company.de. 300 A 3.70.50.1XX
如果我 ping测试.api.konfigurator.company.de然后我得到 3.70.50.1XX,这样就成功了。
所以一切都应该准备好。
预期行为:
如果我打开https://test.api.konfigurator.company.de从浏览器中,则应该显示“它起作用了!”的内容。
实际行为:
禁止您无权访问此资源。
此外,尝试使用 ErrorDocument 处理请求时遇到 403 Forbidden 错误。
虚拟主机:
<VirtualHost *:80>
ServerName test.api.konfigurator.company.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/company/test.api.konfigurator.company.de/public
<Directory /var/www/company/test.api.konfigurator.company.de/public>
Options Indexes FollowSymLinks
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/api_company_konfigurator_error.log
CustomLog ${APACHE_LOG_DIR}/api_company_konfigurator_access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
答案1
您只有一个用于 HTTP 端口 80 的 VirtualHost 块,但您通过 HTTPS 调用服务器。由于 Apache 找不到匹配的 VirtualHost,因此使用默认 VirtualHost。
在端口 443 上为 HTTPS 添加 VirtualHost。