У меня есть виртуальный хост, настроенный для запуска приложения Ruby on Rails на Apache и Passenger следующим образом:
<VirtualHost *:80>
ServerAdmin account@gmail.com
ServerName staging.domain.co
ServerAlias *.doamin.co
DocumentRoot /home/ubuntu/staging/current/public
Итак, staging.domain.co, site1.domain.co, site2.domain.co работают с поиском, это для промежуточной среды. Теперь мне нужно добавить производственную среду на том же сервере. Я бы хотел добавить производственную среду, но не знаю, как это сделать. VPS работает на EC2. Даже при использовании двух разных серверов существует проблема, связанная с тем, что DNS-сервер разрешает все поддомены для текущего IP-адреса VPS. Думаю, единственное решение - использовать разные домены второго уровня:
staging
anotherdomain.co
production
domain.co
Что вы думаете?
Если вы используете виртуальные хосты на основе имен в apache, DNS не имеет к этому никакого отношения; миллион имен хостов может оказаться на вашем IP-адресе, и apache по-прежнему сможет обслуживать миллион различных веб-сайтов.
Тем не менее, проблема с вашей настройкой - это строка
ServerAlias *.domain.com
Вы хотите удалить это и заменить его фактическими субдоменами, используемыми для подготовки и / или производства.
Также обратите внимание, что виртуальный хост, указанный первым, по определению является хостом по умолчанию в apache.