動的なWebページの作成†
本日アクセス: 1 件
認証つきページ†
アクセスにユーザ名とパスワードが必要なページを作ってください。apacheの設定できるはずです。方法はインターネットで検索してください。「BASIC認証」「.htaccess」などのキーワードがいいでしょう。ユーザ名「vine」, パスワード「linux」でアクセスできるようにしてください。
CGIプログラミング†
HTTP†
telnet vilab.org http
GET / HTTP/1.0[改行]
[改行]
単純なCGIプログラム†
#include <stdio.h>
int main(void)
{
printf("Content-Type: text/html");
printf("\n");
printf("<html>\n");
printf("<head><title>Hello</title></head>\n");
printf("<body>\n");
printf("Hello, world!\n");
printf("</body>\n");
printf("</html>\n");
return 0;
}
- Webサーバでプログラムを動かし、その結果をブラウザで表示させることができます。
アクセスカウンタ†
参考になるページ†
- 「カウンタ」「CGI」「SSI」というキーワードで検索すれば,丁寧に説明をしてくれるサイトが多数見つかります.
カウンタとは†
- Webページには,既に用意した情報を提示するだけでなく,まざまな動的な情報を表示するページがあります.カウンターは非常に簡単な例です.
- このページの上にはアクセスするたびに数字があがっていきます.(同じマシンからのアクセスではカウンターが変更しないこともあります)
- 上では文字を使ったカウンタを紹介しましたが,[0][2][4]などのイメージを使ったカウンタもあります.たとえばこのページを見て下さい.
- これらのカウンタページは, http://home.interlink.or.jp/~kamitani/perl_lng/cgiperl.html を参考にして作りました.
以下の課題に挑戦して下さい
- 最低ひとつできれば結構です.
- 難易度の数字は評価点の目安です.
- 難易度の高い課題ができれば,低い方の課題はやらなくても結構です.
- 難易度の高い課題に果敢に挑戦する場合には,その前に一つ難易度の低い課題を終
えておいて,時間切れになった場合の保険にしておいてください.
- カウンタはホームページにつけても良いですし,そこからリンクする別のページに
つけても良いです.ただ,ホームページからカウンタのある場所へ行く方法が分か
るように,作って下さい.
課題A:どんな手段を使っても良いからとりあえずカウンタをつける(難易度60〜70)†
- 手段は問いません.カウンタをつけて下さい.
- 世の中には,フリーでカウンタ機能を提供してくれるところもあります.検索して探してみましょう.
- ホームページでは,どういう手法でカウンタを入手して,作ったかを詳しく説明して下さい.
- できあがったら教員に連絡して下さい.ホームページを見させていただきます.
課題B:みなさんのサーバの上で完結する形でカウンタをつける(難易度70〜80)†
- インターネット上にあるカウンタサービスは,他のサーバの力を借りてカウンタ機能を実現するサービスです.
- みなさんは自分で全部設定できるWWWサーバを持っているのですから,外部のサーバにアクセスすることなしに,カウンタを実現して下さい.
- Perlなどで作ったCGIプログラムを使う方法が一般的かもしれません.ほかにPHPつかったりJavaを使ったりしても可能かもしれません.
- プログラムはどこからか拾ってきて下さい.(もちろん自分で作っても結構ですが,それが出来るくらいなら,課題Cをやった方が良いかと思います)
- できれば文字のカウンタと,イメージを使ったカウンタの両方を作ってみて下さい.
- ホームページでは,どういう手法でカウンタを入手して,作ったかを詳しく説明して下さい.
- できあがったら教員に連絡して下さい.ホームページを見させていただきます.
課題C:C言語でCGIを自作してカウンタをつける(難易度80〜100)†
- CGIプログラムはPerlで書かれることが多いですが,プログラム言語はPerlである必要はありません.
- この演習の前の課題で,C言語のプログラムの課題がありました.あそこで作ったプログラムをすこし改造すれば,カウンタのCGIにすることができます.
- そこで,C言語でカウンタを自作して取り付けて下さい.
- 世の中でたくさん公開されているPerlのカウンタプログラム(たとえば http://home.interlink.or.jp/~kamitani/perl_lng/cgiperl.html など)が参考になるかと思います.
- ホームページでは,どういう手法でカウンタを作ったかを詳しく説明して下さい.
- できあがったら教員に連絡して下さい.ホームページを見させていただきます.
そのほか凝ったページ†
- すでに凝ったホームページを作った経験のある人は、その知識を取り入れて、
インタラクティブなページを時間内にどんどん作ってみて下さい。
- CGIやPHPなど何使っても結構です。
- できあがったら教員に連絡して下さい。