Я не уверен, где я ошибаюсь, но я не могу получить доступ к своему веб-сайту, не включив префикс www в URL-адрес, иначе я могу получить к нему доступ. У меня есть следующие записи DNS:
A: @ - направляет на 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, поэтому я не уверен, есть ли ошибка в моем перенаправлении или что-то еще, но я изо всех сил пытаюсь понять это.
У вас есть запись CNAME для "* .example.com", которая учитывает только наличие. перед доменом с чем-либо (включая www) перед ним, поэтому он будет работать, если вы попробуете что-то вроде test.example.com как. Сделайте новую запись A с @ в поле, где вы бы поместили "www".