From: Yoshiki Hayashi デフォルト位置に Apache をインストールしたならば、
この例はデフォルト状態の CGI プログラムは、セキュリティ上の理由から CGI プログラムは、セキュリティ上の理由から
+ サーバのメインの設定ファイル中で サーバのメインの設定ファイル中で 上記ディレクティブは、CGI ファイルの実行を可能にするよう
Apache に伝えます。また、どのファイルが CGI ファイルかを
- サーバに伝える必要があります。次の この設定では、このディレクトリにおける CGI
プログラムの実行を許可するよう Apache に伝えます。httpd.conf
- 設定ファイルに含まれています。ScriptAlias
+ 設定ファイルに含まれています。
+ Alias ディレクティブとかなり似ています。
- Alias と ScriptAlias は通常、
- DocumentRoot
+ Alias と ScriptAlias との差は、
- ScriptAlias が接頭辞で始まるすべての URL は
- CGI プログラムとみなされるという追加の意味を含んでいることです。
+ /cgi-bin/
で始まるリソースへのあらゆるリクエストに対して、ディレクトリ
/usr/local/apache/cgi-bin/ から提供し、それらを
@@ -84,13 +86,14 @@
ScriptAlias
+ UserDir ディレクティブで
- 彼らのホームディレクトリ配下にウェブコンテンツを持たせたいとします。
+ 例えば、ユーザに cgi-bin ディレクトリへのアクセスができない場合、
CGI プログラムを実行することができる他の場所が必要になります。Options
+
- Options +ExecCGI
- </Directory>
+
+ AddHandler
+ サーバに伝える必要があります。次の
+ cgi または pl
を拡張子に持つすべてのファイルを CGI
プログラムとしてみなすことをサーバに伝えます:.htaccess
- ファイルは、ディレクトリ毎にディレクティブを指定する方法です。
+ .htaccess
+ ファイルは、ディレクトリ毎にディレクティブを指定する方法です。
Apache は、リソースを提供するときに、
提供するファイルが置かれているディレクトリ中の .htaccess
というファイルを参照します。そのファイルを発見したら、
その中で発見されたディレクティブが適用されます。
- .htaccess ファイルは、AllowOverride
+
+ .htaccess ファイルは、
+ AllowOverride ディレクティブは、.htaccess
- ファイルで設定できるディレクティブのタイプを指定します。
- AllowOverride ディレクティブの指定がない場合、
- まったく使えません。CGI の実行を許可するために必要となる
- ディレクティブを指定可能にするには、
- 以下の設定がサーバのメインの設定で必要になります:.htaccess
+ ファイルで、どのタイプのディレクティブが設定できるか、
+ あるいは全く指定できないかを指定します。
+ この目的に必要になるディレクティブを使用できるようにするには、
+ サーバのメインの設定で、以下の設定が必要になります:.htaccess
ファイルでは、次のディレクティブが必要となります:
もう一つは、出力を HTML
か、ブラウザが表示することができる何か他の形式にする必要があります。
@@ -176,9 +194,10 @@
というファイルに保存し、それを cgi-bin
ディレクトリに置いてください。
Perl に精通していなくても、 @@ -189,12 +208,14 @@ 示します。2 行目は、前述したとおり content-type の定義を印字します。 これには復帰改行の二つの組を後に付加します。 これにより、ヘッダの終りに空行が置かれ、HTTP - ヘッダの終りとボディの始まりを示します。3 行目は、``Hello, World.'' + ヘッダの終りとボディの始まりを示します。3 行目は、"Hello, World." という文字列を印字し、これで終りとなります。
好みのブラウザを開き、アドレス
-あるいはファイルを置いたロケーションを指定すると、
Hello, World.
@@ -213,13 +234,10 @@
サーバはあなたの権限で実行されていないのを忘れないように。
- つまり、起動するとき、サーバは特権をもたないユーザ - 通常 ``nobody''
- や ``www'' の権限で実行されます。したがって、あなたが所有する
+ つまり、起動するとき、サーバは特権をもたないユーザ - 通常 nobody
+ や www の権限で実行されます。したがって、あなたが所有する
ファイルを実行するには別のパーミッションが必要となります。
- 通常、``nobody'' が実行するのに十分なパーミッションを与える方法は、
+ 通常、nobody が実行するのに十分なパーミッションを与える方法は、
ファイルに誰でも実行可能とするパーミッションを与えることです:
また、もしあなたのプログラムが他のファイルを読み書きするならば、 それらのファイルは、これが可能となる正しいパーミッション @@ -291,7 +309,9 @@
同様なことは、スクリプトのインタプリタ (しばしば perl)
へのパスで、CGI プログラムの 1 行目に次のように示されます:
これがインタープリタへの実際のパスであることを確実にしておきます。
@@ -323,11 +343,11 @@CGI プログラミングに熟達すると、 - 裏で起こっていることについて更に理解することは有益になるでしょう。 +
CGI プログラミングに習熟すると、 + 裏で起こっていることについて更に理解すること役に立ちます。 ブラウザとサーバがどのように相互通信するかについては特にそうです。 - なぜなら、``Hello, World.'' - を印字するプログラムを書くことはまことに結構ですが、 + なぜなら、"Hello, World." + を印字するプログラムを書くことはおおいに結構ですが、 それは特に有益ではありません。
env を入力します。
+ 通常、普段使用している環境変数の完全なリストを調べるには、
+ コマンドプロンプトで env を入力します。
CGI の処理中、サーバとブラウザも環境変数を設定し、 それにより相互に通信することができるようになります。 その環境変数は、ブラウザタイプ (Netscape, IE, Lynx)、サーバタイプ (Apache, IIS, WebSite)、実行されている CGI - プログラムの名前などのようなものです。
+ プログラムの名前などです。 -これらの変数は CGI プログラマが使用することができます。 +
これらの変数は CGI プログラマが使用できます。
そして、それはクライアントとサーバの通信の話の半分です。
必要な変数の完全なリストは
- print "Content-type: text/html\n\n";
- foreach $key (keys %ENV) {
- print "$key --> $ENV{$key}<br>";
- }
+ print "Content-type: text/html\n\n";
+ foreach $key (keys %ENV) {
+
+
時々、このような文字列が URL @@ -420,22 +443,23 @@
Perl で CGI プログラムを書いているなら、モジュールは CPAN で提供されています。
- この目的のための最も普及しているモジュールは CGI.pm です。
- CGI::Lite も検討しましょう。これは、ほとんどのプログラム
+ この目的のための最も普及しているモジュールは CGI.pm です。
+ CGI::Lite も検討しましょう。これは、ほとんどのプログラム
において必要とするすべての機能の最小セットの実装です。
C で CGI プログラムを書いているなら、いろいろな オプションがあります。これらの内の一つは http://www.boutell.com/cgic/ - で提供されている CGIC ライブラリです。
+ で提供されているCGIC ライブラリです。
CGI に関する情報はウェブで数多く提供されています。CGI
- の問題については Usenet の comp.infosystems.www.authoring.cgi
- で、他のユーザと論議することができます。HTML Writers Guide の
+ の問題については Usenet の comp.infosystems.www.authoring.cgi で、
+ 他のユーザと論議することができます。HTML Writers Guide の
-servers メーリングリストは、あなたの質問に回答してくれる偉大なリソースです。
http://www.hwg.org/lists/hwg-servers/
diff --git a/docs/manual/howto/ssi.xml.ja b/docs/manual/howto/ssi.xml.ja
index f1b962d0516..f8ffb6d3df3 100644
--- a/docs/manual/howto/ssi.xml.ja
+++ b/docs/manual/howto/ssi.xml.ja
@@ -2,7 +2,8 @@