バーチャルホストに関する設定内容を確認する(httpd -t -D DUMP_VHOSTS)
Apache では 1 つの Apache サーバで複数の Web サーバを公開することのできるバーチャルホストの機能が用意されています。ここでは Apache で設定されたバーチャルホストに関する設定内容を表示する方法について解説します。
(Last modified: )
バーチャルホストに関する設定を確認する
Apache で行ったバーチャルホストに関する設定を確認するには次のように行います。
httpd -t -D DUMP_VHOSTS
-t -D DUMP_VHOSTS オプションを付けて httpd を実行してください。なおこのオプションをつけた場合はバーチャルホストに関する設定の確認だけを行って Apache は起動しません。
IPベースのバーチャルホストの場合
それでは実際に試してみます。バーチャルホストの設定は IP ペースと名前ベースの二通りがありますが、最初に IP ベースのバーチャルホストの設定を行った場合です。 httpd.conf に次のような設定を行いました。
<VirtualHost 192.168.10.104:80> ServerName www.example.com ServerAdmin admin@example.com DocumentRoot c:/pg/Apache24/htdocs_com </VirtualHost> <VirtualHost 192.168.10.105:80> ServerName www.example.jp ServerAdmin admin@example.jp DocumentRoot c:/pg/Apache24/htdocs_jp </VirtualHost> <Directory "${SRVROOT}/htdocs_com"> Require all granted </Directory> <Directory "${SRVROOT}/htdocs_jp"> Require all granted </Directory>
それではコマンドプロンプトから httpd -t -D DUMP_VHOSTS を実行してみます。
2 つの IP アドレスがそれぞれどのバーチャルホストへアクセスされるのかのリストが表示されました。
※ IP ベースのバーチャルホストの設定方法については「ApacheでIPベースのバーチャルホストを利用する」を参照されてください。
名前ベースのバーチャルホストの場合
続いて名前ベースのバーチャルホストの設定を行った場合です。 httpd.conf に次のような設定を行いました。
NameVirtualHost 192.168.10.104:80 <VirtualHost 192.168.10.104:80> ServerName www.example.com ServerAdmin admin@example.com DocumentRoot c:/pg/Apache24/htdocs_com </VirtualHost> <VirtualHost 192.168.10.104:80> ServerName www.example.jp ServerAdmin admin@example.jp DocumentRoot c:/pg/Apache24/htdocs_jp </VirtualHost> <Directory "${SRVROOT}/htdocs_com"> Require all granted </Directory> <Directory "${SRVROOT}/htdocs_jp"> Require all granted </Directory>
それではコマンドプロンプトから httpd -t -D DUMP_VHOSTS を実行してみます。
名前ベースの場合は 1 つの IP アドレスに対して複数の Web サーバを公開します。リクエストに含まれる情報からどのサーバへアクセスするのかを判断しますが、登録されているバーチャルホストのリストが表示されました。
なお以前は「NameVirtualHost 192.168.10.104:80」のような記述を先にしていましたが、現在のバージョンでは不要となりました。
※ 名前ベースのバーチャルホストの設定方法については「Apacheで名前ベースのバーチャルホストを利用する」を参照されてください。
-- --
Apache で設定されたバーチャルホストに関する設定内容を表示する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。