В настоящее время у меня есть веб-сервер Ubuntu с настройкой Apache, и он прекрасно работает, я хочу сделать две вещи, я хочу настроить еще два блока, которые будут находиться на одном и том же адресе WAN, но, конечно, иметь отдельные локальные адреса.
Итак, скажем, у меня есть www.example.com в качестве основного сервера, я также хочу, чтобы test.example.com был на другой коробке, а fun.example.com - на третьей.
Как бы я это сделал?
По ссылке, предоставленной Джорджем Курулиасом
Это то, что я искал
NameVirtualHost *:80
<VirtualHost *:80>
ServerName foo.com
DocumentRoot /srv/www/default
<Location "/">
Order Deny, Allow
Deny from all
Allow from all
</Location>
</VirtualHost>
<VirtualHost *:80>
ServerName fooa.com
ProxyPreserveHost on
ProxyPass / http://server2/
ProxyPassReverse / http://server2/
</VirtualHost>
<VirtualHost *:80>
ServerName foob.com
ServerAlias fooc.com
ProxyPreserveHost on
ProxyPass / http://server3/
ProxyPassReverse / http://server3/
</VirtualHost>
Совершенно то, что я хотел вместе с mod_proxy
Примечание
Создание конфигураций виртуальных хостов на вашем сервере Apache магическим образом не приводит к созданию записей DNS для этих имен хостов. У вас должны быть имена в DNS, разрешающие ваш IP-адрес, иначе никто не сможет увидеть ваш веб-сайт. Вы можете поместить записи в ваш файл hosts для локального тестирования, но это будет работать только с компьютера с этими записями хостов.
blockquote># Ensure that Apache listens on port 80 Listen 80 <VirtualHost *:80> DocumentRoot /www/example1 ServerName www.example.com # Other directives here </VirtualHost> <VirtualHost *:80> DocumentRoot /www/example2 ServerName www.example.org # Other directives here </VirtualHost>
Звездочки соответствуют всем адресам, поэтому главный сервер не обслуживает запросы. В связи с тем, что виртуальный хост с ServerName www.example.com находится первым в файле конфигурации, он имеет самый высокий приоритет и может рассматриваться как сервер по умолчанию или основной сервер. Это означает, что если получен запрос, который не соответствует ни одной из указанных директив ServerName, он будет обслуживаться этим первым VirtualHost.
blockquote>Ответ от http://httpd.apache.org
С уважением.