Ruby で CGI

これは ruby を使ったCGI プログラミングの入門用の簡単な解説です。 主に、北大の学生のために書きましたが、その他一般の人が読んでも役に立つように注意を払っております。 基礎的な部分に重点を置いていますので、他人が敷いてくれたレールの外も旅してみたいと感じている人に適しています。

ruby をこれから初めて学び始める人にはもしかしたら敷居が高いかもしれません。perl が使える人なら、ruby が初めてでも大丈夫かもしれません。 「一応それなりに ruby を勉強したけど、なんだかよくわかんないや」「むかし ruby を勉強したけど、忘れちゃった」といった程度の人たちを読者に想定しています。

準備

入門

  1. はじめの一歩:CGI を動かしてみよう

  2. 出力方法:読者のブラウザで読み取れる形に出力する方法

  3. 送受信_環境変数 ENV:閲覧者のサーバーやブラウザから自動的に送られてくる情報などの取得

  4. 送受信_フォームデータの扱い:閲覧者がフォームに入力した情報の取得

  5. 送受信_cgi.rb を使う:CGI のために用意されてる便利なツールを使ってみる

    • 解説編
    • 問題編

このページは、まだ書きかけです。

サンプル

今野が例示用に作ったプログラムのサンプルです。

一覧

名称実習 PC 用web*.ec 用動作の様子内容
フォームテスト formtest_pc.lzh formtest.lzh ○1 フォームによるデータの送信と、CGIによるデータの受信のわかりやすいサンプル。
リンク掲示板 × linkbbs.lzh ○5 URLを書き込むだけでページタイトルを取得。RSS対応。ライブラリ net/http の応用例。

設置方法

web*.ec.hokudai.ac.jp サーバーを使う場合

count.lzh を例にとって説明する、他も同じ要領で、countを他の文字に置き換えるだけ。

  1. Putty で web.ec.hokudai.ac.jp にログイン。下記のコマンドを、エラーが出ていないことを確認しながら、順に実行。
    cd www
    cd cgi
    curl -O cgisamples/count.lzh
    lha x count.lzh
    cd count
    cp htaccess .htaccess
    cd ..
    rm count.lzh
    
  2. ディレクトリ名を count から counter に変えたい場合は、最後に
    mv count counter
    
  3. ブラウザで各自のページにアクセスして動作を確認。
    http://web*.ec.hokudai.ac.jp/******/cgi/count/* 部分は各自異なる)
  4. 必要であれば中身の画像ファイルを差し替えたり、htmlなどの雛形ファイルを書き換える。
    置き換えや書き換えの際にファイルのモードが変化していないことに注意すること。(たぶん大丈夫。)

参考:UNIXコマンドの意味

資料・リンク

以上です。

Last updated 07.Sep.2007 [ Home ] [ 質問メール ]
Copyright © 2005-2006 Shigeru Konno All Rights Reserved..