Linux/2005-S08
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
* 第8回 動的なWebページの作成 [#f5944013]
CENTER:本日アクセス: &counter(today); 件
** 目次 [#gf7f388b]
#contents
** 課題の提出について [#vf316e6f]
- 本日は課題が6個ありますが、途中でいちいち提出せずにどん...
- 実験の時間の最後に、課題1〜6のうちできあがったものをメ...
- それぞれの課題について以下を書いてください。
-- ページのURL
-- どういう手法で作ったかの詳しい説明
-- CGIプログラムはソースコード
- 送り先は report@fig.ele.eng.tamagawa.ac.jp です。
** アクセスカウンタとSSI [#v4c041f6]
*** カウンタとは [#o7ac0697]
Webページには,既に用意した情報を提示するだけでなく,ブラ...
*** 課題1:外部のカウンタを設置する [#mc15b325]
+ 世の中には,フリーでカウンタ機能を提供してくれるところ...
+ サーチエンジンで検索して、カウンタつきのWebページを作成...
-- 「無料 カウンタ」「フリー カウンタ」等で検索するとよい...
+ カウンタをつけたページでは、どういう手法でカウンタを入...
*** 課題2:C言語の自作カウンタを設置する [#m1e636d4]
+ 前々回の課題でC言語でカウンタのプログラムを作る課題(課...
+ そこで作ったプログラムをすこし改造し、カウンタつきのWeb...
+ Webサーバの「SSI」という機能を使うと比較的簡単にカウン...
<!--#exec cmd="実行ファイル名"-->
-- 「SSI apache」「shtml テキストカウンタ」などのキーワー...
+ カウンタをつけたページでは、どういう手法でカウンタを入...
【ヒント】
- http://httpd.apache.org/docs/howto/ssi.html.ja.jis
- httpd.conf か .htaccess を編集して、「SSI」を使えるよう...
Options +Includes
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
- SSI を使ったページの中で(拡張子 .shtml に設定すること...
<!--#exec cmd="/場所をちゃんと指定して/counter"-->
のように記述する。「counter」は課題5のカウンタプログラム...
- counter プログラムの中の修正しなければならないかもしれ...
fp = fopen("counter.dat", "r");
というようなところがあったら、
fp = fopen("/場所をちゃんと指定して/counter.dat", "r");
としなければならない。
- さらに、counter.dat に誰でも書き込めるように chmod でパ...
** CGIプログラミング [#g9833976]
*** CGIとは [#w986b5a8]
CGIとはWebサーバにプログラムを組み込んで、ブラウザ(ユー...
CGIを作成するためには、まずHTTPについて学ぶ必要があります。
*** HTTP(ハイパーテキスト・トランスファー・プロトコル) ...
+ Webサーバとブラウザの間の通信手順(プロトコル)を見てみ...
+ 下記のコマンドで、Webサーバ vilab.org にHTTP用のポート...
telnet vilab.org http
+ すると、下記のように表示されてサーバに接続されると思い...
Trying 202.253.197.203...
Connected to vilab.ele.eng.tamagawa.ac.jp.
Escape character is '^]'.
+ ここで、Webページ http://vilab.org/test.html を取得する...
GET /test.html HTTP/1.0[改行]
[改行]
+ すると、サーバから応答が得られます。
HTTP/1.1 200 OK
Date: Mon, 13 Jun 2005 15:36:31 GMT
Server: Apache/1.3.33 (Debian GNU/Linux) …途中省略… DAV/...
Last-Modified: Mon, 13 Jun 2005 15:36:07 GMT
ETag: "2841b2-7c-42ada7e7"
Accept-Ranges: bytes
Content-Length: 124
Connection: close
Content-Type: text/html
<html>
<head>
<title>viLab</title>
</head>
<body>
<h1>Visual Interface Laboratory</h1>
This is a test page.
</body>
</html>
-- この1行目の「''HTTP/1.1 200 OK''」は、Webサーバから成...
-- 2行目から空行までの「''属性名: 値''」というのは、HTTP...
-- そして、空行以降が test.html 本体のHTMLとなっています。
+ 以上は、通常Netscape NavigatorやInternet Explorerなどの...
*** 課題3:単純なCGIプログラム [#me9354c2]
- CGIでは上でも例に示したHTTPのうち、「''Content-Type:''...
Content-Type: text/html
<html>
<head><title>Hello</title></head>
<body>
Hello, world!
</body>
</html>
- これをたとえばシェルスクリプトで作成すると以下のように...
#! /bin/sh
echo "Content-Type: text/html"
echo
echo "<html>"
echo "<head><title>Hello</title></head>"
echo "<body>"
echo "Hello, world!"
echo "</body>"
echo "</html>"
- C言語なら以下のようになります。
#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;
}
- 上のプログラムをコンパイルして、CGIとして動かしてみてく...
- CGIを動かすためにはapacheの設定が必要かもしれません。ち...
-- 「apache CGI Linux」等で検索して調べてください。
*** 課題4:接続情報を表示するCGI [#u506cf02]
- 接続情報を表示するCGIを作成してください。
- 最低限、下記の環境変数の内容を表示すればいいです。
-- ブラウザやOSの種類(環境変数 HTTP_USER_AGENT)
-- ブラウザのIPアドレス(環境変数 REMOTE_ADDR)
- できあがったら、どういう手法で作ったかを説明したページ...
*** 課題5:時刻を表示するCGI [#daabebdc]
- 現在時刻を表示するCGIを作成してください。
- dateコマンドを利用するのが一番楽でしょう。
- できあがったら、どういう手法で作ったかを説明したページ...
** 認証つきページ [#b62226f8]
*** 課題6:認証つきページ [#a1c9b0e0]
- アクセスにパスワードが必要なページを作ってください。apa...
- 方法はインターネットで検索してください。「BASIC認証」「...
- ユーザ名「vine」, パスワード「linux」でアクセスできるよ...
** 第5回レポート [#l24235f8]
*** 課題の提出を忘れずに [#vf316e6f]
- 実験の時間の最後に、課題1〜6のうちできあがったものをメ...
- それぞれの課題について以下を書いてください。
-- ページのURL
-- どういう手法で作ったかの詳しい説明
-- CGIプログラムはソースコード
- 送り先は report@fig.ele.eng.tamagawa.ac.jp です。
*** レポート課題 [#y6bff57d]
【問1】 以下の言葉をすべて使って、WWWについて簡潔に説明...
- WWW
- ハイパーテキスト
- リンク
- ティム・バーナーズリー
- CERN
- URL
- HTTP
- HTML
- SGML
- XML
- サーバ
- ブラウザ
- apache
- IIS
- NCSA
- CGI
- Java
- Javascript
- SSL
- CHTML
以上
【問2】 「無断リンク禁止」「このページに許可なくリンクし...
【提出期限】 次回実験開始まで(開始後のものは受け付けな...
【提出方法】 hi-shiozawa@adms.tamagawa.ac.jp に電子メー...
- この実験に限らず、レポートでは自分の名前を最初に書くこ...
- ですます調(「です」「ます」)は用いず、言い切りの形で...
- インターネットや書籍を利用して調べるのは自由だが、長す...
終了行:
* 第8回 動的なWebページの作成 [#f5944013]
CENTER:本日アクセス: &counter(today); 件
** 目次 [#gf7f388b]
#contents
** 課題の提出について [#vf316e6f]
- 本日は課題が6個ありますが、途中でいちいち提出せずにどん...
- 実験の時間の最後に、課題1〜6のうちできあがったものをメ...
- それぞれの課題について以下を書いてください。
-- ページのURL
-- どういう手法で作ったかの詳しい説明
-- CGIプログラムはソースコード
- 送り先は report@fig.ele.eng.tamagawa.ac.jp です。
** アクセスカウンタとSSI [#v4c041f6]
*** カウンタとは [#o7ac0697]
Webページには,既に用意した情報を提示するだけでなく,ブラ...
*** 課題1:外部のカウンタを設置する [#mc15b325]
+ 世の中には,フリーでカウンタ機能を提供してくれるところ...
+ サーチエンジンで検索して、カウンタつきのWebページを作成...
-- 「無料 カウンタ」「フリー カウンタ」等で検索するとよい...
+ カウンタをつけたページでは、どういう手法でカウンタを入...
*** 課題2:C言語の自作カウンタを設置する [#m1e636d4]
+ 前々回の課題でC言語でカウンタのプログラムを作る課題(課...
+ そこで作ったプログラムをすこし改造し、カウンタつきのWeb...
+ Webサーバの「SSI」という機能を使うと比較的簡単にカウン...
<!--#exec cmd="実行ファイル名"-->
-- 「SSI apache」「shtml テキストカウンタ」などのキーワー...
+ カウンタをつけたページでは、どういう手法でカウンタを入...
【ヒント】
- http://httpd.apache.org/docs/howto/ssi.html.ja.jis
- httpd.conf か .htaccess を編集して、「SSI」を使えるよう...
Options +Includes
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
- SSI を使ったページの中で(拡張子 .shtml に設定すること...
<!--#exec cmd="/場所をちゃんと指定して/counter"-->
のように記述する。「counter」は課題5のカウンタプログラム...
- counter プログラムの中の修正しなければならないかもしれ...
fp = fopen("counter.dat", "r");
というようなところがあったら、
fp = fopen("/場所をちゃんと指定して/counter.dat", "r");
としなければならない。
- さらに、counter.dat に誰でも書き込めるように chmod でパ...
** CGIプログラミング [#g9833976]
*** CGIとは [#w986b5a8]
CGIとはWebサーバにプログラムを組み込んで、ブラウザ(ユー...
CGIを作成するためには、まずHTTPについて学ぶ必要があります。
*** HTTP(ハイパーテキスト・トランスファー・プロトコル) ...
+ Webサーバとブラウザの間の通信手順(プロトコル)を見てみ...
+ 下記のコマンドで、Webサーバ vilab.org にHTTP用のポート...
telnet vilab.org http
+ すると、下記のように表示されてサーバに接続されると思い...
Trying 202.253.197.203...
Connected to vilab.ele.eng.tamagawa.ac.jp.
Escape character is '^]'.
+ ここで、Webページ http://vilab.org/test.html を取得する...
GET /test.html HTTP/1.0[改行]
[改行]
+ すると、サーバから応答が得られます。
HTTP/1.1 200 OK
Date: Mon, 13 Jun 2005 15:36:31 GMT
Server: Apache/1.3.33 (Debian GNU/Linux) …途中省略… DAV/...
Last-Modified: Mon, 13 Jun 2005 15:36:07 GMT
ETag: "2841b2-7c-42ada7e7"
Accept-Ranges: bytes
Content-Length: 124
Connection: close
Content-Type: text/html
<html>
<head>
<title>viLab</title>
</head>
<body>
<h1>Visual Interface Laboratory</h1>
This is a test page.
</body>
</html>
-- この1行目の「''HTTP/1.1 200 OK''」は、Webサーバから成...
-- 2行目から空行までの「''属性名: 値''」というのは、HTTP...
-- そして、空行以降が test.html 本体のHTMLとなっています。
+ 以上は、通常Netscape NavigatorやInternet Explorerなどの...
*** 課題3:単純なCGIプログラム [#me9354c2]
- CGIでは上でも例に示したHTTPのうち、「''Content-Type:''...
Content-Type: text/html
<html>
<head><title>Hello</title></head>
<body>
Hello, world!
</body>
</html>
- これをたとえばシェルスクリプトで作成すると以下のように...
#! /bin/sh
echo "Content-Type: text/html"
echo
echo "<html>"
echo "<head><title>Hello</title></head>"
echo "<body>"
echo "Hello, world!"
echo "</body>"
echo "</html>"
- C言語なら以下のようになります。
#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;
}
- 上のプログラムをコンパイルして、CGIとして動かしてみてく...
- CGIを動かすためにはapacheの設定が必要かもしれません。ち...
-- 「apache CGI Linux」等で検索して調べてください。
*** 課題4:接続情報を表示するCGI [#u506cf02]
- 接続情報を表示するCGIを作成してください。
- 最低限、下記の環境変数の内容を表示すればいいです。
-- ブラウザやOSの種類(環境変数 HTTP_USER_AGENT)
-- ブラウザのIPアドレス(環境変数 REMOTE_ADDR)
- できあがったら、どういう手法で作ったかを説明したページ...
*** 課題5:時刻を表示するCGI [#daabebdc]
- 現在時刻を表示するCGIを作成してください。
- dateコマンドを利用するのが一番楽でしょう。
- できあがったら、どういう手法で作ったかを説明したページ...
** 認証つきページ [#b62226f8]
*** 課題6:認証つきページ [#a1c9b0e0]
- アクセスにパスワードが必要なページを作ってください。apa...
- 方法はインターネットで検索してください。「BASIC認証」「...
- ユーザ名「vine」, パスワード「linux」でアクセスできるよ...
** 第5回レポート [#l24235f8]
*** 課題の提出を忘れずに [#vf316e6f]
- 実験の時間の最後に、課題1〜6のうちできあがったものをメ...
- それぞれの課題について以下を書いてください。
-- ページのURL
-- どういう手法で作ったかの詳しい説明
-- CGIプログラムはソースコード
- 送り先は report@fig.ele.eng.tamagawa.ac.jp です。
*** レポート課題 [#y6bff57d]
【問1】 以下の言葉をすべて使って、WWWについて簡潔に説明...
- WWW
- ハイパーテキスト
- リンク
- ティム・バーナーズリー
- CERN
- URL
- HTTP
- HTML
- SGML
- XML
- サーバ
- ブラウザ
- apache
- IIS
- NCSA
- CGI
- Java
- Javascript
- SSL
- CHTML
以上
【問2】 「無断リンク禁止」「このページに許可なくリンクし...
【提出期限】 次回実験開始まで(開始後のものは受け付けな...
【提出方法】 hi-shiozawa@adms.tamagawa.ac.jp に電子メー...
- この実験に限らず、レポートでは自分の名前を最初に書くこ...
- ですます調(「です」「ます」)は用いず、言い切りの形で...
- インターネットや書籍を利用して調べるのは自由だが、長す...
ページ名: