IIS で HTML コンテンツを公開しよう!
デフォルトの設定を確認しよう
IIS をインストールしたらいよいよ、コンテンツを公開してみましょう!
ここでは、スタティックコンテンツ (=HTML ファイル) を公開する方法を説明しますが、これは非常に簡単です。
実はデフォルトの設定でも、既に HTML コンテンツは公開されるように設定されています。
どのような設定になっているかは、IIS マネージャの下記をみるとわかります。 IIS マネージャを開き、左側のツリーを降りてゆき、サイト というアイコンをクリックしてください。
すると、右側のペインにサイトの一覧が表示されます。
ま、「一覧」 といっても、インストールした直後にはひとつしか "サイト" は作られていません。"Default Web Site" という名前の "サイト" です。
サイトとは? ~ Default Web Site の意味は?
IIS の管理画面でいうところの 「サイト」 というのは、 ホスト名と TCP ポート番号の組み合わせと考えると良いでしょう。
上図の意味を考えて見ましょう。 次の部分です。
名前: Default Web Site
ID: 1
状態: 開始済み (http)
バインド: *:80 (http)
パス: %SystemDrive%\inetpub\wwwroot
名前の 「Default Web Site」 は管理画面における Web サイトの名前です。 デフォルトで一個作られる Web サイトの名前は "Default Web Site" という名前です。
自分でサイトを作るときは、わかりやすい名前をつければよいです。
「ID」 というのは、IIS の構成情報で内部的に使う番号です。
「状態」 というのは、IIS が正常に動作しているか、あるいは、 停止状態なのかなどの状態を表します。
「バインド」 というのはこのサイトが、どのようなホスト名(あるいは IP アドレス) 及び TCP ポートと関連付けされているかあらわしています。
*:80 というのは、全てのホスト名及びそのサーバーで使用できる全ての IP アドレスの、 80 番ポートに、このサイトが関連付けされているということを示しています。
例えば、このサーバーが 192.168.1.10 という IP アドレスが割り当てられている場合、 このサーバー上の IE から IIS に対しては、192.168.1.10 という IP アドレスと、 ループバックアドレスの 127.0.0.1 を通してアクセス可能になります。
もし、サイトの設定において * ではなく特定の IP アドレスを指定すると、 指定した IP アドレスでのみアクセス可能になります。
また、同じ IP アドレス、同じ TCP ポートで複数の Web サイトをホストしたい場合もあります。 この時は、ホストヘッダーというのを設定するのですが、その設定方法については 複数のウェブサイトをホストする で説明します。
さて、最後の項目 「パス」 はデフォルトで %SystemDrive%\inetpub\wwwroot に設定されています。 % と % で囲まれた値は、(システム) 環境変数の %SYSTEMDRIVE% をあらわしています。
環境変数を確認するのは、コマンドプロンプトを利用すると簡単です。 コマンドプロンプトから次のように echo を使って、環境変数を表示させることが出来ます。
C:\> echo %SYSTEMDRIVE% C:
私の環境のように、%SYSTEMDRIVE% が C: に設定されていれば、%SystemDrive%\inetpub\wwwroot は C:\inetpub\wwwroot の意味になります。
このパスが、このサイトのドキュメントルートパスになります。
つまり、%SystemDrive%\inetpub\wwwroot\foo.html や %SystemDrive%\inetpub\wwwroot\dir1\bar.html はそれぞれ http://<ホスト名>/foo.html 及び http://<ホスト名>/dir1/bar.html としてアクセス可能になります。
HTML ファイルの公開
説明が長々しくなりましたが要は
デフォルトで、そのサーバーで利用可能な全ての IP アドレス上の 80 番ポートにバインドされた Web サイトが作成され、そのドキュメントルートが %SYSTEMDRIVE%\inetpub\wwwroot\ である
ということになります。
従って、%SYSTEMDRIVE%\inetpub\wwwroot\ 以下に HTML ファイルを置けば、IIS を通してコンテンツを公開することが可能になります。
尚、この資料では %SYSTEMDRIVE% が C: であるとして記事を記載します。 異なる環境をご利用の方は、適宜読み替えてください。
試しにドキュメントルートにあるファイルを、ブラウザから要求してみましょう。
IIS 7.0 をインストールすると、C:\inetpub\wwwroot ディレクトリ以下に welcome.png という画像ファイルがあるはずです。
サーバー上のブラウザから、http://localhost/welcome.png を要求すれば、以下のようにちゃんと見えるはずです。
これが見えない場合は、IIS が開始されていない可能性がありますから、管理画面からサイトを選択して、 右クリックし、以下のメニューから 開始 を選択してください。
いかがでしょうか? 上記の画面が表示できれば、IIS は実行中です!