* 動的なWebページの作成 [#f5944013]

CENTER:本日アクセス: &counter(today); 件

** 認証つきページ [#b62226f8]

アクセスにユーザ名とパスワードが必要なページを作ってください。apacheの設定できるはずです。方法はインターネットで検索してください。「BASIC認証」「.htaccess」などのキーワードがいいでしょう。ユーザ名「vine」, パスワード「linux」でアクセスできるようにしてください。

** CGIプログラミング [#g9833976]

*** HTTP [#rd560677]

+ 
 telnet vilab.org http
+ 
 GET / HTTP/1.0[改行]
 [改行]


*** 単純なCGIプログラム [#me9354c2]

 #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サーバでプログラムを動かし、その結果をブラウザで表示させることができます。

** アクセスカウンタ [#v4c041f6]

*** 参考になるページ [#f577d354]

- 「カウンタ」「CGI」「SSI」というキーワードで検索すれば,丁寧に説明をしてくれるサイトが多数見つかります.

*** カウンタとは [#o7ac0697]

+ Webページには,既に用意した情報を提示するだけでなく,まざまな動的な情報を表示するページがあります.カウンターは非常に簡単な例です.
+ このページの上にはアクセスするたびに数字があがっていきます.(同じマシンからのアクセスではカウンターが変更しないこともあります)
+ 上では文字を使ったカウンタを紹介しましたが,[0][2][4]などのイメージを使ったカウンタもあります.たとえばこのページを見て下さい.
+ これらのカウンタページは, http://home.interlink.or.jp/~kamitani/perl_lng/cgiperl.html を参考にして作りました.

以下の課題に挑戦して下さい

- 最低ひとつできれば結構です.
- 難易度の数字は評価点の目安です.
- 難易度の高い課題ができれば,低い方の課題はやらなくても結構です.
- 難易度の高い課題に果敢に挑戦する場合には,その前に一つ難易度の低い課題を終
えておいて,時間切れになった場合の保険にしておいてください.
- カウンタはホームページにつけても良いですし,そこからリンクする別のページに
つけても良いです.ただ,ホームページからカウンタのある場所へ行く方法が分か
るように,作って下さい.

*** 課題A:どんな手段を使っても良いからとりあえずカウンタをつける(難易度60〜70) [#kf0ed40f]

+ 手段は問いません.カウンタをつけて下さい.
+ 世の中には,フリーでカウンタ機能を提供してくれるところもあります.検索して探してみましょう.
+ ホームページでは,どういう手法でカウンタを入手して,作ったかを詳しく説明して下さい.
+ できあがったら教員に連絡して下さい.ホームページを見させていただきます.

*** 課題B:みなさんのサーバの上で完結する形でカウンタをつける(難易度70〜80) [#be3c7d01]

+ インターネット上にあるカウンタサービスは,他のサーバの力を借りてカウンタ機能を実現するサービスです.
+ みなさんは自分で全部設定できるWWWサーバを持っているのですから,外部のサーバにアクセスすることなしに,カウンタを実現して下さい.
+ Perlなどで作ったCGIプログラムを使う方法が一般的かもしれません.ほかにPHPつかったりJavaを使ったりしても可能かもしれません.
+ プログラムはどこからか拾ってきて下さい.(もちろん自分で作っても結構ですが,それが出来るくらいなら,課題Cをやった方が良いかと思います)
+ できれば文字のカウンタと,イメージを使ったカウンタの両方を作ってみて下さい.
+ ホームページでは,どういう手法でカウンタを入手して,作ったかを詳しく説明して下さい.
+ できあがったら教員に連絡して下さい.ホームページを見させていただきます.

*** 課題C:C言語でCGIを自作してカウンタをつける(難易度80〜100) [#rd34fafd]

+ CGIプログラムはPerlで書かれることが多いですが,プログラム言語はPerlである必要はありません.
+ この演習の前の課題で,C言語のプログラムの課題がありました.あそこで作ったプログラムをすこし改造すれば,カウンタのCGIにすることができます.
+ そこで,C言語でカウンタを自作して取り付けて下さい.
+ 世の中でたくさん公開されているPerlのカウンタプログラム(たとえば http://home.interlink.or.jp/~kamitani/perl_lng/cgiperl.html など)が参考になるかと思います.
+ ホームページでは,どういう手法でカウンタを作ったかを詳しく説明して下さい.
+ できあがったら教員に連絡して下さい.ホームページを見させていただきます.

*** そのほか凝ったページ [#s8d6f5ea]
+ すでに凝ったホームページを作った経験のある人は、その知識を取り入れて、
インタラクティブなページを時間内にどんどん作ってみて下さい。
+ CGIやPHPなど何使っても結構です。
+ できあがったら教員に連絡して下さい。

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS