Я пытаюсь настроить поддомены для своего Экземпляр AWS EC2 ubuntu, но без достаточных знаний я больше не мог продолжать.
Я создал две A Recoards на веб-сайте поставщика услуг доменных имен.
www.example.com указывает на 10.10.10.10
example.com указывает на 10.10.10.10
Но теперь я бы хотел субдомен для отдельные сайты / услуги например, скажем webmail.example.com, database.example.com.
Я попытался настроить файл виртуального хоста для субдоменов, но он не сработал, когда я получил доступ к этим субдоменам, сказал хром "Ой! Google Chrome не может найти subdoamin.example.com"
Вопрос: У меня вопрос, как я могу настроить поддомены для моего сервера?
Заранее спасибо.
Безусловно, самый простой способ сделать это - создать запись DNS с подстановочными знаками для example.com. например
*.example.com. 14400 A 10.10.10.10
или CNAME
*.example.com CNAME example.com.
Помните, что Apache будет обслуживать содержимое первого виртуального хоста, чей Название сервера или Serveralias соответствует Хост: заголовок в HTTP-запросе. Если ни одно из этих совпадений не совпадает, то обслуживается содержимое первого определенного виртуального хоста, поскольку он считается виртуальным хостом по умолчанию.
Самый простой способ получить apache для содержимого сервера - использовать ИмяBasedVirtual хостинг.
Если вы хотите передавать один и тот же контент с каждого виртуального хоста, просто определите один
NameVirtualHost *:80
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
...
</VirtualHost>
Если вы хотите обслуживать разный (но одинаковый) контент из sub1.example.com и sub2.example.com, вы можете сделать что-нибудь в этой строке
NameVirtualHost *:80
<VirtualHost *:80>
ServerName sub1.example.com
ServerAlias sub2.example.com
DocumentRoot /var/www/sub1sub2
...
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
...
</VirtualHost>
и так далее.
Если вам нужно установить и настроить много хостов vhosts, вы можете взглянуть на Apache Динамически настраиваемый массовый хостинг документация.