現在、ApacheがセットアップされたUbuntu Webサーバーが素晴らしく実行されています。2つのことを行います。同じWANアドレスにあるが、もちろん個別のローカルアドレスを持つ2つのボックスをセットアップします。
したがって、メインサーバーとしてwww.example.comがあり、別のボックスにtest.example.comがあり、3番目にfun.example.comがあるとします。
どうすればこれを達成できますか?
George Kourouleas提供のリンクから
私が探していたものです
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アドレスに解決する必要があります。そうしないと、他の誰もあなたのWebサイトを見ることができなくなります。ローカルテスト用にホストファイルにエントリを置くことができますが、それはそれらのホストエントリを持つマシンからのみ機能します。
# 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によって処理されます。
http://httpd.Apache.org からの回答
敬具。