我不确定我哪里做错了,但如果 URL 中不包含 www 前缀,我似乎无法访问我的网站,否则我可以正常访问。我有以下 DNS 记录:
答:@ - 指向 000.000.000.000
CNAME:*.example.com - 是 example.com 的别名
在我的 .conf 文件中,有以下内容:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / http://www.example.com/
</VirtualHost>
<VirtualHost *:80>
ServerName www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/example.com/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
该文件应该可以正常工作,因为我可以访问 www.example.com 上的网站,所以我不确定我的重定向是否有错误或者是其他问题,但我正在努力解决这个问题。
答案1
您有一条“*.example.com”的 CNAME 记录,它只考虑在域名前面有一个 . ,并在其前面添加任何内容(包括“www”),因此如果您尝试使用 test.example.com 之类的东西,它就会起作用。在您要输入“www”的字段中用 @ 创建一条新的 A 记录。