📄 cgi.html.ja.euc-jp
字号:
<p>エラ〖ログは艇茫です。
链てのうまくいかないことは、エラ〖ログにメッセ〖ジを栏喇します。
涩ずそれを呵介に斧るべきです。
もし、あなたがウェブサイトを肩号している眷疥が
エラ〖ログの徊救を钓していないならば、きっと戮のサイトで肩号するべきです。
エラ〖ログの粕み数を池ぶことで、ほとんど链ての啼玛が孔庐に澄千され、
孔庐に豺疯されるということが尸かるでしょう。</p>
<h3><a name="suexec" id="suexec">Suexec</a></h3>
<p><a href="../suexec.html">suexec</a> サポ〖トプログラムは
バ〖チャルホストやユ〖ザのホ〖ムディレクトリの眷疥に巴って
CGI プログラムを般うユ〖ザ涪嘎の布で瘤らせることを材墙にします。
Suexec の涪嘎のチェックは润撅に阜しく、それを塔たさない眷圭は
CGI プログラムが <code>Premature end of script headers</code> エラ〖で
悸乖されません。</p>
<p>suexec を蝗っているかどうかを拇べためには <code>apachectl
-V</code> を悸乖して、<code>SUEXEC_BIN</code> の眷疥を拇べてください。
Apache がそこに suexec のバイナリを券斧した眷圭は、suexec が
蝗脱されます。</p>
<p>suexec を窗链に妄豺していない嘎り、蝗うべきではありません。
suexec を痰跟にするには、<code>SUEXEC_BIN</code> から回されている
<code>suexec</code> バイナリを猴近 (か叹涟を恃构) するだけです。
<a href="../suexec.html">suexec</a> を粕んだ稿で、まだそれを
蝗いたいのであれば、<code>suexec -V</code> を悸乖して suexec の
ログファイルの疤弥を拇べ、そのログファイルを蝗ってポリシ〖般瓤を
斧つけてください。</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="behindscenes" id="behindscenes">微で部が弹こっているのか?</a></h2>
<p>CGI プログラミングに浆较すると、
微で弹こっていることについて构に妄豺すること舔に惟ちます。
ブラウザとサ〖バがどのように陵高奶慨するかについては泼にそうです。
なぜなら、"Hello, World."
を磅机するプログラムを今くことはおおいに冯菇ですが、
それは泼に铜弊ではありません。</p>
<h3><a name="env" id="env">茨董恃眶</a></h3>
<p>茨董恃眶は、
あなたがコンピュ〖タを蝗うときに收りに赂哼している猛です。
それらは、パス
(コマンドをタイプしたときに悸乖する悸狠のファイルを玫し叫すところ)、
ユ〖ザ叹、眉琐房などのような守网なものです。
奶撅、舍檬蝗脱している茨董恃眶の窗链なリストを拇べるには、
コマンドプロンプトで <code>env</code> を掐蜗します。</p>
<p>CGI の借妄面、サ〖バとブラウザも茨董恃眶を肋年し、
それにより陵高に奶慨することができるようになります。
その茨董恃眶は、ブラウザタイプ (Netscape, IE, Lynx)、サ〖バタイプ
(Apache, IIS, WebSite)、悸乖されている CGI
プログラムの叹涟などです。</p>
<p>これらの恃眶は CGI プログラマが蝗脱できます。
そして、それはクライアントとサ〖バの奶慨の厦の染尸です。
涩妥な恃眶の窗链なリストは <a href="http://hoohoo.ncsa.uiuc.edu/cgi/env.html">http://hoohoo.ncsa.uiuc.edu/cgi/env.html</a> にあります。</p>
<p>笆布の帽姐な Perl CGI
プログラムは、畔される链ての茨董恃眶を山绩します。票屯のプログラムは、
Apache ディストリビュ〖ションの <code>cgi-bin</code>
ディレクトリに企つ崔まれています。
いくつかの恃眶が涩寇であり、いくつかは扦罢であることに庙罢してください。
そして、给及のリストにはないいくつかの恃眶が山绩されているかもしれません。
さらに、Apache はデフォルトで脱罢されている答塑弄なものに
<a href="../env.html">あなた极咳の茨董恃眶を裁える</a>ための、
驴くの佰なる数恕を脱罢してします。</p>
<div class="example"><p><code>
#!/usr/bin/perl<br />
print "Content-type: text/html\n\n";<br />
foreach $key (keys %ENV) {<br />
<span class="indent">
print "$key --> $ENV{$key}<br>";<br />
</span>
}
</code></p></div>
<h3><a name="stdin" id="stdin">STDIN と STDOUT</a></h3>
<p>サ〖バとクライアント粗のもう办つの奶慨は、筛洁掐蜗
(<code>STDIN</code>)と筛洁叫蜗 (<code>STDOUT</code>)
を奶じて乖なわれます。奶撅の矢坍において、<code>STDIN</code>
はキ〖ボ〖ドやプログラムが瓢侯するために涂えられるファイルを罢蹋し、
<code>STDOUT</code> は奶撅コンソ〖ルまたはスクリ〖ンを罢蹋します。</p>
<p>ウェブフォ〖ムから CGI プログラムへ<code>POST</code>
したとき、フォ〖ムのデ〖タは泼侍なフォ〖マットで芦ねられ、
<code>STDIN</code> を奶して、CGI プログラムに苞き畔されます。
プログラムはデ〖タがキ〖ボ〖ド
もしくはファイルから丸ていたかのように借妄することができます。</p>
<p>≈泼侍なフォ〖マット∽はとても帽姐です。フィ〖ルド叹と猛はイコ〖ル
(=) で冯ばれます。そして猛の寥はアンパサンド (&) で冯ばれます。
スペ〖ス、アンパサンド、イコ〖ルのような烫泡な矢机は、
それらが瓢侯を绿誊にしないようにその矢机に陵碰する 16 渴に恃垂されます。
链デ〖タ矢机误は、笆布のようになります:
</p>
<div class="example"><p><code>
name=Rich%20Bowen&city=Lexington&state=KY&sidekick=Squirrel%20Monkey
</code></p></div>
<p>箕」、このような矢机误が URL
に烧裁されるのを斧るでしょう。その眷圭、サ〖バは
<code>QUERY_STRING</code> という茨董恃眶にその矢机误を掐れます。それは
<code>GET</code> リクエストと钙ばれます。
HTML フォ〖ムでは、デ〖タを畔すために <code>GET</code> と
<code>POST</code> のどちらを蝗脱するかを、<code>FORM</code> タグの
<code>METHOD</code> 掳拉の肋年で回年します。</p>
<p>CGI プログラムは、その矢机误を舔に惟つ攫鼠に尸充する勒扦があります。
宫いにも、そのデ〖タ借妄を锦けるライブラリやモジュ〖ルが赂哼します。
これらは、CGI プログラムの戮の烫でも票屯に舔に惟ちます。</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="libraries" id="libraries">CGI モジュ〖ル/ライブラリ</a></h2>
<p>CGI プログラムを今くとき、烫泡な慌祸の络婶尸をしてくれる
コ〖ドライブラリまたはモジュ〖ルを蝗うことを浮皮すべきです。
これはエラ〖を负らし、玲い倡券につながります。</p>
<p>Perl で CGI プログラムを今いているなら、モジュ〖ルは <a href="http://www.cpan.org/">CPAN</a> で捏丁されています。
この誊弄のための呵も舍第しているモジュ〖ルは <code>CGI.pm</code> です。
<code>CGI::Lite</code> も浮皮しましょう。これは、ほとんどのプログラム
において涩妥とするすべての怠墙の呵井セットの悸刘です。</p>
<p>C で CGI プログラムを今いているなら、いろいろな
オプションがあります。これらの柒の办つは <a href="http://www.boutell.com/cgic/">http://www.boutell.com/cgic/</a>
で捏丁されている <code>CGIC</code> ライブラリです。</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="moreinfo" id="moreinfo">构なる攫鼠</a></h2>
<p>CGI に簇する攫鼠はウェブで眶驴く捏丁されています。CGI
の啼玛については Usenet の <a href="news:comp.infosystems.www.authoring.cgi">comp.infosystems.www.authoring.cgi</a> で、
戮のユ〖ザと侠的することができます。HTML Writers Guide の
-servers メ〖リングリストは、あなたの剂啼に搀批してくれる拔络なリソ〖スです。
<a href="http://www.hwg.org/lists/hwg-servers/">http://www.hwg.org/lists/hwg-servers/</a>
で构に驴くを玫し叫すことができます。</p>
<p>そしてもちろん、おそらく CGI
プログラムの瓢侯に簇する拒嘿の链てが淡揭されている
CGI の慌屯を粕むべきです。オリジナルバ〖ジョンを
<a href="http://hoohoo.ncsa.uiuc.edu/cgi/interface.html">NCSA</a>
で、アップデ〖トされたドラフトを
<a href="http://web.golux.com/coar/cgi/">Common Gateway Interface RFC
プロジェクト</a>で徊救することができます。</p>
<p>CGI の啼玛について、裁わっているメ〖リングリストまたはニュ〖ス
グル〖プに剂啼を流るとき、弹こったもの、弹こってほしいこと、
悸狠に弹こったことがどう般うか、蝗脱しているサ〖バ、
CGI プログラムを淡揭している咐胳に簇する浇尸な攫鼠と、
材墙であれば啼玛のコ〖ドを捏丁するようにしてください。
そうすることで、啼玛がより粗帽に斧つかるようになります。</p>
<p>Apache のソ〖スコ〖ドにおいて啼玛を券斧したことを澄慨していない嘎り、
CGI の啼玛に簇する剂啼を Apache
バグデ〖タベ〖スに<strong>流るべきでない</strong>
ことに庙誊してください。</p>
</div></div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../ja/howto/cgi.html" title="Japanese"> ja </a> |
<a href="../ko/howto/cgi.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
</div><div id="footer">
<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">モジュ〖ル</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">脱胳</a> | <a href="../sitemap.html">サイトマップ</a></p></div>
</body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -