| トップ | Solaris | FreeBSD | Gentoo | CentOS | Fedora | Windows | Tips | 自宅サーバの動作確認 | サイト内検索(Namazu) | サイト内検索(HE) |
複数のドメインを取得し、ドメインごとのWebサイトを運用します。
ここでは名前ベースのヴァーチャルホストで運用します。
なお、ここでは以下のように設定し、必要なディレクトリ・ファイルは存在し、パーミッションも適切に設定されているものとします。
| アドレス | メインサイト | http://www.crimson-snow.net |
| 追加するサイト | http://www.red-snow.net | |
| ドキュメントルート | メインサイト | /var/apache2/htdocs |
| 追加するサイト | /var/apache2/red-snow | |
| ログファイル | メインサイト | /var/apache2/logs/access_log |
| 追加するサイト | /var/apache2/logs/access_red-snow.net_log | |
| エラーログファイル | メインサイト | /var/apache2/logs/error_log |
| 追加するサイト | /var/apache2/logs/error_red-snow.net_log | |
| ワームのログファイル | メインサイト | /var/apache2/logs/worm_log |
| 追加するサイト | /var/apache2/logs/worm_red-snow.net_log |
Solaris10ではIPv6が標準で有効になっていますが、サーバ側にIPv6のアドレスを設定していない場合、error_logに
(128)Network is unreachable: connect to listener
というログが大量に出力されてしまいます。
その為、本サイトではIPアドレスとポート番号を指定しています。
この設定はサーバ側にIPv6のアドレスを設定している場合、IPアドレスの部分はアスタリスク(*)で構いません。
また、「Apache」の導入前ならconfigure時に --disable-ipv6 を指定しても構いません。
Solaris# vi /etc/apache2/httpd.conf <= 設定ファイルの編集
#NameVirtualHost *:80
↓
NameVirtualHost 192.168.0.2:80 <= 変更
メインサイトの情報を追加
<VirtualHost 192.168.0.2:80>
ServerName www.crimson-snow.net
</VirtualHost>
ここまで
追加するサイトの情報を追加
<VirtualHost 192.168.0.2:80>
ServerName www.red-snow.net
ServerAlias red-snow.net *.red-snow.net
DocumentRoot /var/apache2/red-snow
ErrorLog /var/apache2/logs/error_red-snow.net_log
CustomLog /var/apache2/logs/access_red-snow.net_log combined env=!no_log
CustomLog /var/apache2/logs/worm_red-snow.net_log combined env=worm
</VirtualHost>
ここまで
|
「Apache」を再起動し、設定を反映させます。
Solaris# svcadm restart svc:/network/http:apache2 <= 「Apache」の起動 |
リクエストされたアドレスによって以下のような動作に変更したい場合、それぞれの設定を追加します。
IPアドレスでアクセスさせない
直接IPアドレスで指定された場合、特に設定していなければ最初に記述されたVirtualHostの設定が適用されます。
そこで、IPアドレスで指定された場合にページを表示させたくない場合は以下のように設定を追加します。
なお、ここでは最低限の設定のみ記述していますので、必要に応じてログファイルの設定なども行えます。
Solaris# vi /etc/apache2/httpd.conf <= 設定ファイルの編集
最初のVirtualHostの設定として以下を追加
<VirtualHost 192.168.0.2:80>
ServerName any
DocumentRoot /tmp
</VirtualHost>
|
「Apache」を再起動し、設定を反映させます。
Solaris# svcadm restart svc:/network/http:apache2 <= 「Apache」の起動 |
ホスト名を強制的に付加する
例えばwwwをホスト名とした場合に、wwwを付加しなかったり、mail等の他のホスト名を付加してアクセスされた場合に
強制的にwwwを付加したアドレスに転送するようにします。
この場合、ホスト名を付加したものと付加していないものの二つのVirtualHostを設定し、Redirectを利用して転送します。
なお、ここでも最低限の設定のみ記述していますので、必要に応じてログファイルの設定などが行えます。
Solaris# vi /etc/apache2/httpd.conf <= 設定ファイルの編集
wwwを付加したデフォルトのメインサイトのVirtualHostの設定
<VirtualHost 192.168.0.2:80>
ServerName www.crimson-snow.net
</VirtualHost>
ここまで
www以外のVirtualHostの設定
<VirtualHost 192.168.0.2:80>
ServerName crimson-snow.net
ServerAlias *.crimson-snow.net
Redirect permanent / http://www.crimson-snow.net/
</VirtualHost>
ここまで
|
「Apache」を再起動し、設定を反映させます。
Solaris# svcadm restart svc:/network/http:apache2 <= 「Apache」の起動 |
ローカルネットワークからもアクセスできるようにこちらを参照して、 DNSサーバの設定と正引きゾーンファイルの追加をします。