CGIKitを起動するには、コンポーネントとは別にCGIプログラムを用意します。通常、コンポーネント内のファイルに直接アクセスすることはありません。
起動プログラムで行うことは3つあります。
<番号リスト-1->CKApplicationのインスタンスを生成する番号リスト-1->
CKApplication#run()を実行するCKApplicationは、メインページやCGIプログラムのパスなど実行に必要な環境変数を持つ、プログラムを起動するために必要なクラスです。プログラムを起動するには、まずCKApplicationのインスタンスを生成します。
app = CKApplication.new
CKApplicationには以下の環境変数があります(すべてアクセサを用意しています)。
| 環境変数 | 説明 | 
|---|---|
baseurl | 
Webサーバ上のCGIプログラムのパス。デフォルトは環境変数SCRIPT_NAME。 | 
path | 
ファイルシステム上のCGIプログラムのパス。デフォルトは起動プログラムのあるディレクトリ。 | 
component_path | 
コンポーネントを置くディレクトリ。デフォルトは起動プログラムのあるディレクトリ。 | 
resource | 
画像を置くディレクトリのパス。 | 
main | 
何も指定がないときに表示するページ。デフォルトはMainPageコンポーネント。 | 
locale | 
ロケール。コンポーネントの表示時、設定されているロケール表記のあるHTMLファイルを使う。 | 
master_locale | 
主ロケール。ロケールが設定されていない場合、または設定されているロケールと主ロケールが同じ場合、ロケール表記のないHTMLファイルを使う。 | 
tmpdir | 
一時ファイルのディレクトリ。セッションファイルなどを保存する。デフォルトはtmpディレクトリ。 | 
error_page | 
エラーページ。デフォルトはCKErrorPage。 | 
manage_session | 
セッションの自動管理。デフォルトでは自動管理を行わない。 | 
session_key | 
セッションキー。デフォルトは_session_id。 | 
session_id | 
セッションID。 | 
store_in_url | 
セッションIDをURLに付加して保持する。デフォルトは有効。 | 
store_in_cookie | 
セッションIDをクッキーで保持する。デフォルトは有効。 | 
session_cookie_expires | 
セッションIDの保存に使うクッキーの有効期限。nilに設定したとき、セッションの有効期間はブラウザを閉じるまでになる。デフォルトは1週間。 | 
timeout | 
セッションの有効期限(秒)。デフォルトでは1週間保存する(604800秒)。 | 
auth_by_user_agent | 
セッションをブラウザで認証する。デフォルトは無効。 | 
auth_by_remote_addr | 
セッションをIPアドレスで認証する。デフォルトは無効。 | 
char_code | 
文字コード。フォームデータをこの文字コードに変換する。"jis", "sjis", "euc"から選択する。 | 
環境変数を設定したら、最後にCKApplication#runを実行します。
以下はHelloWorldの起動プログラムです。
#!/usr/local/bin/ruby require 'cgikit' app = CKApplication.new app.run