Как связать субдомен www с конкретным vhost DocumentRoot?
Серверная среда: Ubuntu 12.04 | Apache 2.2
Я отключил конфигурацию vhost по умолчанию, используя a2dissite default
и удалил файл по умолчанию из sites-available
а также sites-enabled
, У меня есть 3 домена, указывающих на VPS в DigitalOcean, и я добавил записи CNAME для www
связано с domain.com.
(с завершающей точкой).
Это текущая настройка:
- domain1.com: http://pastie.org/9457734
- domain2.com: http://pastie.org/9457732
- domain3.com: vhost не определен, но указывает на VPS
Переход на domain1.com обслуживает намеченный DocumentRoot, как и domain2.com. Тем не менее, переход к www.domain1.com служит DocumentRoot для domain2.com (это проблема). Похоже, этого не происходит с www.domain2.com, который обслуживает правильный путь. domain3.com, у которого нет созданного vhost, также таинственно обслуживает контент из domain2.com
Если я удалю www
Записи CNAME, ссылки с www не работают после распространения DNS. Я видел предложения добавить ServerAlias
директива в файлах vhost. Когда я добавляю такие директивы, Apache выдает следующие ошибки:
"ScriptAlias принимает два аргумента: имя-псевдоним и настоящее имя"
Как я могу решить эту проблему?
1 ответ
Не уверен, почему вы получаете эту ошибку при использовании ServerAlias
Однако это должен быть путь.
Из документа:
ServerAlias
директива устанавливает альтернативные имена для хоста, для использования с виртуальными хостами на основе имен
Это на самом деле то, что вы делаете, как вы определили www.hrsys.com.ng
в качестве псевдонима (CNAME) в вашем DNS для hrsys.com.ng
,