ゼミI実習


ゼミIで使用しているテキストがあります

HTML実習(その9)Webサーバの管理


Webページのコンテストでは各自がWebサーバを起動して情報を発信します。今回と次回はWebサーバを起動してWebサーバの管理について練習します。ただしテキストは今回で終了します。次回は同じテキストを使いコンテスト本番で確実に情報発信ができるように練習します。

オープンソースのWebサーバとして有名なものにApache、市販のものとしてMicrosoftのIISがあります。しかし、これらはWebサーバの設定をする上で手軽に利用するには向いていません。

そこでゼミでは中田昭雄さんが作って配布しているAN HTTPDを使用します。Webサーバの設定を簡単に行うことができます。使用して気に入ったらAN HTTPDのページにコメントを書きましょう。

1.AN HTTPDの入手

次のURLを開いてください。

http://www.st.rim.or.jp/~nakata/

・現在のバージョンは1.42nです。
・zip形式のファイルhttpd142n.zipを右クリックし対象をファイルに保存をクリックします。
・Hドライブに保存してください。

・ダウンロードし終わったらHドライブに保存してあるhttpd142n.zipをダブルクリックしてください。
・開いたウィンドウにあるすべてのファイルを選択し、メニューで編集>フォルダにコピーを選択します。
・画面でHドライブをクリックして選択してから、新しいフォルダの作成をクリックしHドライブにANHTTPDというフォルダを作ってください。
・画面のHドライブにANHTTPDのフォルダが表示されたら、コピーのボタンをクリックします。
・終了したらhttpd142n.zipのウィンドウは閉じておきましょう。

うまくインストールされているかHドライブのANHTTPDフォルダを確認してください。次にWebサーバの設定を行います。

2.Webサーバの設定

ANHTTPDフォルダの中のhttpd.exeをダブルクリックしてください。ファイアウォールでブロックされているなどの表示が出たらブロックを解除するをクリックしてください。

画面では変化がありません。これは一般にWebサーバはサービスという形態で起動しているからです。画面右下に小さく黄色いアイコンが出ていればこのWebサーバが稼動中であることがわかります。

このアイコンを右クリックするとメニューが現れます。オプション/一般をクリックしてください。主な項目について説明していきましょう。

・ドキュメントルートはH:¥ANHTTPDになっていることと思います。ドキュメントルートとはWebサーバがページを見に行くフォルダと考えてください。
・ポートは80になっています。HTTPというプロトコルに割り当てられたポートです。すでに決められているためウェルノウンポート(well-known Port)と呼ばれます。
・デフォルトインデックスはindex.htmlとなっています。これは皆さんのトップページ(これが本来のホームページ)の名前を決めています。トップページをindex.htmにしている時にはindex.htmに変更してください。もしこのページ以外のページをトップページにした場合にはそのフォルダ中のファイルをすべて閲覧されてしまう場合があります。
・さきほどドキュメントルートの設定がありましたがユーザごとにドキュメントルートを設定することもできます。ポートの下にその設定用の項目があります。チェックを入れるようになっているのでこの設定をする場合には、クリックしてチェックを入れてください。とりあえず左側の入力欄に/~ba150999のように自分の/~学籍番号を入力してください。これはURLに関連付けられ、実際にWebページを見るときのアドレスになります。
・次にこれに対応する実際のフォルダを作ります。右側の欄にba150999¥public_htmlのように入力してください。次にドキュメントルートをたどって作っていきます。すなわちH:¥ANHTTPDフォルダの中にまずba150999フォルダを作ります。そしてba150999フォルダの中にpublic_htmlフォルダを作ります。このフォルダの中にページを作っておくとIEなどからWebページを見ることができるようになります。

・次のSSIを許可するではサーバ・サイド・インクルードと呼ばれるWebサーバごとに提供されている機能、例えばプログラムの実行やファイルの取り込みを行うことができます。今回、授業では取り上げないので試したい方は自分で調べてください。
・”CGIを実行する”ではまず.pl,.cgi以外の必要のない拡張子については左側のチェックをはずしておきましょう。
・次に拡張子のマッピングを確認しておきましょう。.pl,.cgiを選択して(この時チェックをはずさないようにしてください)追加ボタンをクリックします。拡張子に対して実行するアプリケーションが割り当てられています。通常はこの設定で大丈夫でしょう。
・そしてCGIを実行するためにはCGIのファイルを入れるフォルダを用意しておく必要があります。public_htmlフォルダの中にcgi-binというフォルダを作ってください。

・以上で設定は終わりましたが、次にエイリアスというタブをクリックしてください。ここには実行パスとして/cgi-binと/scriptがすでに用意されています。もう実行用のフォルダを作ってあるのでこれらは不要です。削除するかチェックをはずしておきましょう。
・他にもいろいろな設定項目がありますが興味のある人はANHTTPDの説明がファイルで用意されているので参考にしてください。

・最後に適用ボタンをクリックし、OKボタンをクリックします。
・エイリアスを変更しますというウィンドウが出たらOKボタンをクリックしてください。
・オプションを変更してサーバを再起動しますというウィンドウが出たらOKボタンをクリックしてください。
・OKボタンをクリックし終了します。

以上で設定が終了しました。次にWebサーバの動作を確認してみましょう。

3.Webサーバの動作確認

まずトップページをIEで見ることができるか確認してみましょう。取りあえず次のプログラムをメモ帳のようなエディタを使って入力し、デフォルトインデックスに設定した値に基づきindex.htmlかindex.htmという名前でさきほど作ったpublic_htmlというフォルダに保存してください。

<html>
<body>
<center>
<font size="48" color="#ff0000">
ホームページコンテスト締め切りまであと3週間!!
</font>
</center>
</body>
</html>

次にインターネットエクスプローラを起動してください。メニューでファイル>開くの順にクリックします。そこでhttp://127.0.0.1/~ba150999/のように入力し、OKボタンをクリックしてください。 127.0.0.1はローカルホストを指すIPアドレスで今使用しているコンピュータを指します。

<参考>
http://localhost/~ba150999/のように127.0.0.1の代わりにlocalhostを使うこともできます。

もう一つ実習室のコンピュータは固定のIPアドレスが割り当てられています。このIPアドレスを確認してみましょう。スタート>すべてのプログラム>アクセサリ>コマンドプロンプトの順にクリックしてください。コマンドプロンプトのウィンドウでipconfigと打ちエンターキーを一回たたきます。

IP Addressという項目にコンピュータに割り振られたIPアドレスが表示されるのでこれをメモしておきましょう。そしてIEでhttp://IPアドレス/~ba150999/で試してください。これでもトップページが表示されます。

コンテスト時のWebページの評価は皆さんのWebサーバを使って見に行きます。この時、IPアドレスを固定しておく必要がある(コンピュータごとに異なるIPアドレスが割り振られているため)ので今から使用するコンピュータを決めておいてください。決めたならばコンテスト当日は必ずそのコンピュータを使うようにしてください。

ただし、当日コンピュータの調子が悪い場合があるので、そのような時には早めに申し出てください。

IPアドレスを確認したら用紙を渡しますので、記入して提出してください。

<参考>
一つのサーバで集中して管理する(一元管理)よりは、このように個人がサーバを立てて情報を管理するようにすることもできます。この場合、情報は分散して管理されることになります。

次にCGIの動作確認をしてみましょう。CGIに関しては興味を持ったら自分で勉強するようにしてください。今回の例ではCGIを作るときにPerlという言語を使用しています。

次のプログラムをメモ帳のようなエディタを使って入力し、warning.cgiという名前でさきほど作ったcgi-binというフォルダに保存してください。保存する時に、ファイルの種類ですべてのファイルを指定しておくと、ファイル名がおかしくなる事態を避けることができます。

print "Content-type: text/html\n\n";
print '<HTML><HEAD><TITLE>注意</TITLE></HEAD>';
print '<BODY>';
print '<H1>ホームページコンテスト締め切りまであと3週間弱!!</H1>';
print '</BODY></HTML>';
exit;

IEでhttp://127.0.0.1/~ba150999/cgi-bin/warning.cgiのように入力し、OKボタンをクリックしてください。文章が表示されたでしょうか。うまくいったら各コンピュータに固定のIPアドレスでも試しておきましょう。

AN HTTPDを終了するときは画面右下のタスクバー上の黄色いアイコンを右クリックしメニューから終了をクリックし終了します。セキュリティ上、必要な時以外は終了するように心がけましょう。

残りの時間を使ってコンテスト用のWebページを作ってください。さきほど回収したIPアドレスをもとに閲覧用のWebページを用意しておきます。

<注意>前回うまくCGIの結果を表示できなかった場合について

・anhttpdの実行ファイルと同じフォルダで作業した場合にうまく表示できません。
・まず個人用フォルダ(H:)(Hドライブ)にANHTTPDという名前のフォルダを作ってください。
・それからこの前作ったフォルダhttpd142pの中の自分の学籍番号と同じ名前のフォルダを、先ほど作ったANHTTPDというフォルダにコピーしてください。
・anhttpdを起動します。フォルダhttpd142pの中のhttpd.exeをダブルクリックします。
・デスクトップ右下に黄色いアイコンが出るので右クリックします。
・メニューからオプション一般をクリックしてください。
・ドキュメントルートをh:¥ANHTTPDにしておきましょう。
・デフォルトインデックスは自分が作ったファイルに合わせておきましょう。index.htmならindex.htmにしておきます。

あとはindex.htmをh:¥anhttpd¥s451666¥public_htmlに保存したら、インターネットエクスプローラで

http://localhost/~s451666/index.htm

で確認します。

またCGIの方はあとはwarning.cgiをh:¥anhttpd¥s451666¥public_html¥cgi-binに保存したら、インターネットエクスプローラで

http://localhost/~s451666/cgi-bin/warning.cgi

で確認します。

今度はうまくCGIも実行できていることと思います。