%20%E4%BB%AE%E6%83%B3%E3%83%9B%E3%82%B9%E3%83%88%E8%A8%AD%E5%AE%9A.png)
ローカル Web サーバーで仮想ホストを構成しようとしています。必要なのは、ローカルホストまたはサーバー IP にアクセスしたときにデフォルトの Centos ページが表示され、/etc/hosts で構成されている他の Web サイトにアクセスしたときにそれらの Web サイトが表示されることです。
これはこのセットアップの正しい構成ですか? 思ったように動作しません。すべての Web サイトがデフォルトの Centos ページに移動するため、これは望んでいることではありません。
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web1.com/html/
ServerName web1.com
ErrorLog /var/www/vhost/web1.com/logs/error.log
CustomLog /var/www/vhost/web1.com/logs/access.log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web2.com/html/
ServerName web2.com
ErrorLog /var/www/vhost/web2.com/logs/error.log
CustomLog /var/www/vhost/web2.com/logs/access.log common
</VirtualHost>
答え1
これを ServerName web1.com のすぐ下の仮想ホストに追加します。
ServerAlias *.web1.com
これは質問内のコメントに対する回答なので、その質問を追加するには質問を編集する必要があります。
答え2
Ubuntu サーバーで Apache を設定する場合は、/etc/apache2/sites-available/000-default.conf
ファイルに移動して以下の行を追加します。
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web1.com/html/
ServerName web1.com
ErrorLog /var/www/vhost/web1.com/logs/error.log
CustomLog /var/www/vhost/web1.com/logs/access.log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web2.com/html/
ServerName web2.com
ErrorLog /var/www/vhost/web2.com/logs/error.log
CustomLog /var/www/vhost/web2.com/logs/access.log common
</VirtualHost>
また、ホストファイル( )にも以下の行を追加します/etc/hosts
。
127.0.1.1 web1.com
127.0.1.2 web2.com