home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 November / CMCD1104.ISO / Software / Complet / Apache / apache_2.0.52-win32-x86-no_ssl.msi / Data.Cab / F277831_cgi.html.ko.euckr < prev    next >
Extensible Markup Language  |  2004-07-09  |  24KB  |  501 lines

  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko"><head><!--
  4.         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  5.               This file is generated from xml source: DO NOT EDIT
  6.         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  7.       -->
  8. <title>╛╞╞──í ┼⌡┼Σ╕«╛≤: CGI╕ª ╗τ┐δ╟╤ ╡┐└√ ╞Σ└╠┴÷ ╗²╝║ - Apache HTTP Server</title>
  9. <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
  10. <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
  11. <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
  12. <link href="../images/favicon.ico" rel="shortcut icon" /></head>
  13. <body id="manual-page"><div id="page-header">
  14. <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>
  15. <p class="apache">Apache HTTP Server Version 2.0</p>
  16. <img alt="" src="../images/feather.gif" /></div>
  17. <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
  18. <div id="path">
  19. <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs-project/">Documentation</a> > <a href="../">Version 2.0</a> > <a href="./">How-To / Tutorials</a></div><div id="page-content"><div id="preamble"><h1>╛╞╞──í ┼⌡┼Σ╕«╛≤: CGI╕ª ╗τ┐δ╟╤ ╡┐└√ ╞Σ└╠┴÷ ╗²╝║</h1>
  20. <div class="toplang">
  21. <p><span>░í┤╔╟╤ ╛≡╛ε: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
  22. <a href="../ja/howto/cgi.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
  23. <a href="../ko/howto/cgi.html" title="Korean"> ko </a></p>
  24. </div>
  25. </div>
  26. <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#intro">╝╥░│</a></li>
  27. <li><img alt="" src="../images/down.gif" /> <a href="#configuring">CGI╕ª ╟π┐δ╟╧╡╡╖╧ ╛╞╞──í ╝│┴ñ╟╧▒Γ</a></li>
  28. <li><img alt="" src="../images/down.gif" /> <a href="#writing">CGI ╟┴╖╬▒╫╖Ñ └█╝║╟╧▒Γ</a></li>
  29. <li><img alt="" src="../images/down.gif" /> <a href="#troubleshoot">▒╫╖»│¬ ╛╞┴≈ ╡┐└█╟╧┴÷ ╛╩╛╞┐Σ!</a></li>
  30. <li><img alt="" src="../images/down.gif" /> <a href="#behindscenes">╡┌┐í╝¡┤┬ ╣½╜╝ └╧└╠ ╣·╛ε┴÷┤┬░í?</a></li>
  31. <li><img alt="" src="../images/down.gif" /> <a href="#libraries">CGI ╕≡╡Γ/╢≤└╠║Ω╖»╕«</a></li>
  32. <li><img alt="" src="../images/down.gif" /> <a href="#moreinfo">┤⌡ ╕╣└║ ┴ñ║╕...</a></li>
  33. </ul></div>
  34. <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  35. <div class="section">
  36. <h2><a name="intro" id="intro">╝╥░│</a></h2>
  37.     
  38.  
  39.     <table class="related"><tr><th>░ⁿ╖├╡╚ ╕≡╡Γ</th><th>░ⁿ╖├╡╚ ┴÷╜├╛ε</th></tr><tr><td><ul><li><code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code></li><li><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td><ul><li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li><li><code class="directive"><a href="../mod/core.html#options">Options</a></code></li><li><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code></li></ul></td></tr></table>
  40.  
  41.     <p>CGI (Common Gateway Interface)┤┬ └Ñ╝¡╣÷░í ║╕┼δ CGI ╟┴╖╬▒╫╖Ñ
  42.     ╚ñ└║ CGI ╜║┼⌐╕│╞«╢≤░φ ║╬╕ú┤┬, (└Ñ╞Σ└╠┴÷ │╗┐δ└╗ ╕╕╡σ┤┬) ┐▄║╬
  43.     ╟┴╖╬▒╫╖Ñ░· ┼δ╜┼╟╧┤┬ ╣µ╣²└╗ ┴ñ└╟╟╤┤┘. └Ñ╗τ└╠╞«┐í╝¡ ╡┐└√└╬
  44.     ╞Σ└╠┴÷╕ª ╕╕╡σ┤┬ ░í└σ ╚τ╟╧░φ ░ú┤▄╟╤ ╣µ╣²└╠┤┘. └╠ ╣«╝¡┤┬ ╛╞╞──í
  45.     └Ñ╝¡╣÷┐í CGI╕ª ▒╕╝║╟╧┤┬ ╣µ╣²└╗ ╝╥░│╟╧░φ, CGI ╟┴╖╬▒╫╖Ñ└╗
  46.     └█╝║╟╪║╗┤┘.</p>
  47.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  48. <div class="section">
  49. <h2><a name="configuring" id="configuring">CGI╕ª ╟π┐δ╟╧╡╡╖╧ ╛╞╞──í ╝│┴ñ╟╧▒Γ</a></h2>
  50.     
  51.  
  52.     <p>CGI ╟┴╖╬▒╫╖Ñ└╠ ┐├╣┘╖╬ ╡┐└█╟╧╖┴╕Θ CGI ╜╟╟α└╠ ░í┤╔╟╧╡╡╖╧
  53.     ╛╞╞──í╕ª ╝│┴ñ╟╪╛▀ ╟╤┤┘. ╝│┴ñ╟╧┤┬ ╣µ╣²└║ ┐⌐╖»░í┴÷┤┘.</p>
  54.  
  55.     <h3><a name="scriptalias" id="scriptalias">ScriptAlias</a></h3>
  56.       
  57.  
  58.       <p><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  59.       ┴÷╜├╛ε╕ª ╗τ┐δ╟╧╕Θ ╛╞╞──í┤┬ ╞»┴ñ ╡≡╖║┼Σ╕«╕ª CGI ╟┴╖╬▒╫╖Ñ┐δ└╕╖╬
  60.       ╡╨┤┘. ╛╞╞──í┤┬ └╠ ╡≡╖║┼Σ╕«┐í └╓┤┬ ╕≡╡τ ╞─└╧└╠ CGI
  61.       ╟┴╖╬▒╫╖Ñ└╠╢≤░φ ░í┴ñ╟╧┐⌐ ┼¼╢≤└╠╛≡╞«░í └┌┐°└╗ ┐Σ├╗╟╧╕Θ └┌┐°└╗
  62.       ╜╟╟α╟╧╖┴░φ ╜├╡╡╟╤┤┘.</p>
  63.  
  64.       <p><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  65.       ┴÷╜├╛ε┤┬ ┤┘└╜░· ░░└╠ ╗τ┐δ╟╤┤┘.</p>
  66.  
  67.       <div class="example"><p><code>
  68.         ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/
  69.       </code></p></div>
  70.  
  71.       <p>└º ┐╣┴ª┤┬ ╛╞╞──í╕ª ▒Γ║╗ └σ╝╥┐í ╝│─í╟╤ ░µ┐∞
  72.       <code>httpd.conf</code> ╝│┴ñ╞─└╧┐í └╓┤┬ │╗┐δ└╠┤┘. <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code> ┴÷╜├╛ε┤┬ <code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code> ┴÷╜├╛ε┐═ ░░└╠ URL
  73.       ╛╒║╬║╨└╗ ╞»┴ñ ╡≡╖║┼Σ╕«╖╬ ┤δ└└╟╤┤┘.
  74.       <code class="directive">Alias</code>┐═
  75.       <code class="directive">ScriptAlias</code>┤┬ ║╕┼δ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> ╡≡╖║┼Σ╕« ╣█┐í └╓┤┬
  76.       ╡≡╖║┼Σ╕«┐í ╗τ┐δ╟╤┤┘. <code class="directive">Alias</code>┐═
  77.       <code class="directive">ScriptAlias</code>└╟ ┬≈└╠┴í└║
  78.       <code class="directive">ScriptAlias</code>░í ├▀░í╖╬ URL ╛╒║╬║╨└╕╖╬
  79.       ╜├└█╟╧┤┬ ╕≡╡τ ╞─└╧└╗ CGI ╟┴╖╬▒╫╖Ñ└╕╖╬ ├δ▒▐╟╧┤┬ ┴í└╠┤┘.
  80.       ▒╫╖í╝¡ └º└╟ ╝│┴ñ└║ ╛╞╞──í┐í░╘ <code>/cgi-bin/</code>└╕╖╬
  81.       ╜├└█╟╧┤┬ └┌┐°└╗ ┐Σ├╗╟╧╕Θ
  82.       <code>/usr/local/apache2/cgi-bin/</code> ╡≡╖║┼Σ╕«┐í╝¡
  83.       ├ú╛╞╝¡ CGI ╟┴╖╬▒╫╖Ñ└╕╖╬ ├│╕«╟╧╢≤░φ ╛╦╕░┤┘.</p>
  84.  
  85.       <p>┐╣╕ª ╡Θ╛ε, URL
  86.       <code>http://www.example.com/cgi-bin/test.pl</code>└╗
  87.       ┐Σ├╗╟╧╕Θ ╛╞╞──í┤┬
  88.       <code>/usr/local/apache2/cgi-bin/test.pl</code> ╞─└╧└╗
  89.       ╜╟╟α╟╧┐⌐ ░ß░·╕ª ╣▌╚»╟╤┤┘. ╣░╖╨ ╞─└╧└╠ ┴╕└τ╟╧░φ ╜╟╟α░í┤╔╟╧╕τ
  90.       ╛ε╢▓ ╣µ╣²└╕╖╬╡τ ├Γ╖┬└╗ ╟╪╛▀ ╟╤┤┘. ▒╫╖╕┴÷ ╛╩└╕╕Θ ╛╞╞──í┤┬
  91.       ┐└╖∙╣«└╗ ║╕│╜┤┘.</p>
  92.     
  93.  
  94.     <h3><a name="nonscriptalias" id="nonscriptalias">ScriptAlias ╡≡╖║┼Σ╕« ╣█┐í └╓┤┬ CGI</a></h3>
  95.       
  96.  
  97.       <p>║╕┼δ ║╕╛╚╗≤ └╠└»╢º╣«┐í CGI ╟┴╖╬▒╫╖Ñ└║ <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>╟╤ ╡≡╖║┼Σ╕«┐í
  98.       ╟╤┴ñ╟╤┤┘. ▒╫╖í╝¡ ░ⁿ╕«└┌┤┬ ┤⌐░í CGI ╟┴╖╬▒╫╖Ñ└╗ ╗τ┐δ╟╥ ╝÷
  99.       └╓┤┬┴÷ ╛÷░▌╚≈ ░¿╡╢╟╥ ╝÷ └╓┤┘. ▒╫╖»│¬ └√┤τ╟╤ ║╕╛╚┴╢─í╕ª
  100.       ├δ╟▀┤┘╕Θ ╛╞╣½ ╡≡╖║┼Σ╕«┐í╝¡│¬ CGI ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╧┴÷ ╛╩└╗
  101.       └╠└»░í ╛°┤┘. ┐╣╕ª ╡Θ╛ε, <code class="directive"><a href="../mod/mod_userdir.html#userdir">UserDir</a></code> ┴÷╜├╛ε╕ª ╗τ┐δ╟╧┐⌐
  102.       ╗τ┐δ└┌░í └┌╜┼└╟ ╚¿╡≡╖║┼Σ╕«┐í └Ñ╞Σ└╠┴÷╕ª ░í┴÷┤┬ ░µ┐∞╕ª
  103.       ░í┴ñ╟╧└┌. ╗τ┐δ└┌░í └┌╜┼└╟ CGI ╟┴╖╬▒╫╖Ñ└╗ ╗τ┐δ╟╧░φ ╜═└║╡Ñ
  104.       <code>cgi-bin</code> ╡≡╖║┼Σ╕«┐í ┴ó▒┘▒╟╟╤└╠ ╛°┤┘╕Θ, ┤┘╕Ñ
  105.       ░≈┐í╝¡╢≤╡╡ CGI ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╧░φ ╜═└╗ ░═└╠┤┘.</p>
  106.  
  107.       <p>╛╞╣½ ╡≡╖║┼Σ╕«┐í╝¡│¬ CGI ╜╟╟α└╗ ╟π┐δ╟╧╖┴╕Θ ╡╬ ░·┴ñ└╠
  108.       ╟╩┐Σ╟╧┤┘. ╕╒└·, <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code>│¬ <code class="directive"><a href="../mod/core.html#sethandler">SetHandler</a></code> ┴÷╜├╛ε╕ª ╗τ┐δ╟╧┐⌐
  109.       <code>cgi-script</code> ╟┌╡Θ╖»╕ª └█╡┐╟╪╛▀ ╟╤┤┘. ╡╬╣°┬░╖╬,
  110.       <code class="directive"><a href="../mod/core.html#options">Options</a></code> ┴÷╜├╛ε┐í
  111.       <code>ExecCGI</code>╕ª ┴÷┴ñ╟╪╛▀ ╟╤┤┘.</p>
  112.     
  113.  
  114.     <h3><a name="options" id="options">Options╕ª ╗τ┐δ╟╧┐⌐ ╕φ╜├└√└╕╖╬ CGI ╜╟╟α└╗ ╟π┐δ╟╧▒Γ</a></h3>
  115.       
  116.  
  117.       <p>╝¡╣÷└╟ ┴╓╝│┴ñ╞─└╧┐í ┴≈┴ó <code class="directive"><a href="../mod/core.html#options">Options</a></code> ┴÷╜├╛ε╕ª ╗τ┐δ╟╧┐⌐ ╞»┴ñ
  118.       ╡≡╖║┼Σ╕«┐í╝¡ CGI ╜╟╟α└╗ ╟π┐δ╟╥ ╝÷ └╓┤┘.</p>
  119.  
  120.       <div class="example"><p><code>
  121.         <Directory /usr/local/apache2/htdocs/somedir><br />
  122.         <span class="indent">
  123.           Options +ExecCGI<br />
  124.         </span>
  125.         </Directory>
  126.       </code></p></div>
  127.  
  128.       <p>└º ┴÷╜├╛ε╖╬ ╛╞╞──í┤┬ CGI ╞─└╧└╟ ╜╟╟α└╗ ╟π┐δ╟╤┤┘. ╛ε╢▓
  129.       ╞─└╧└╠ CGI ╞─└╧└╬┴÷╡╡ ╝¡╣÷┐í░╘ ╛╦╖┴╛▀ ╟╤┤┘. ┤┘└╜ <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> ┴÷╜├╛ε┤┬ ╝¡╣÷┐í░╘
  130.       ╚«└σ└┌░í <code>cgi</code>│¬ <code>pl</code>└╬ ╞─└╧└║ ╕≡╡╬
  131.       CGI ╟┴╖╬▒╫╖Ñ└╠╢≤░φ ╛╦╕░┤┘.</p>
  132.  
  133.       <div class="example"><p><code>
  134.         AddHandler cgi-script .cgi .pl
  135.       </code></p></div>
  136.     
  137.  
  138.     <h3><a name="htaccess" id="htaccess">.htaccess ╞─└╧</a></h3>
  139.       
  140.  
  141.       <p><a href="htaccess.html"><code>.htaccess</code> ┼⌡┼Σ╕«╛≤</a>└║
  142.       <code>httpd.conf</code>┐í ┴ó▒┘▒╟╟╤└╠ ╛°┤┬ ░µ┐∞┐í CGI ╟┴╖╬▒╫╖Ñ└╗
  143.       ╗τ┐δ╟╥ ╝÷ └╓┤┬ ╣µ╣²└╗ ╛╦╖┴┴╪┤┘.</p>
  144.     
  145.  
  146.     <h3><a name="userdir" id="userdir">╗τ┐δ└┌ ╡≡╖║┼Σ╕«</a></h3>
  147.       
  148.  
  149.       <p>╛╞╖í ╝│┴ñ└╗ ╗τ┐δ╟╧╕Θ ╗τ┐δ└┌ ╡≡╖║┼Σ╕«┐í╝¡ <code>.cgi</code>╖╬
  150.       │í│¬┤┬ ╞─└╧└╗ CGI ╟┴╖╬▒╫╖Ñ└╕╖╬ ╜╟╟α╟╤┤┘.</p>
  151.  
  152.       <div class="example"><p><code>
  153.       <Directory /home/*/public_html><br />
  154.       <span class="indent">
  155.         Options +ExecCGI<br />
  156.         AddHandler cgi-script .cgi<br />
  157.       </span>
  158.       </Directory>
  159.       </code></p></div>
  160.  
  161.       <p>┤┘└╜└╗ ╗τ┐δ╟╧╕Θ ╗τ┐δ└┌ ╡≡╖║┼Σ╕«└╟ <code>cgi-bin</code>
  162.       ╟╧└º╡≡╖║┼Σ╕«┐í └╓┤┬ ╕≡╡τ ╞─└╧└╗ CGI ╟┴╖╬▒╫╖Ñ└╕╖╬ └╬╜─╟╤┤┘.</p>
  163.  
  164.       <div class="example"><p><code>
  165.       <Directory /home/*/public_html/cgi-bin><br />
  166.       <span class="indent">
  167.         Options ExecCGI<br />
  168.         SetHandler cgi-script<br />
  169.       </span>
  170.       </Directory>
  171.       </code></p></div>
  172.  
  173.     
  174.  
  175.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  176. <div class="section">
  177. <h2><a name="writing" id="writing">CGI ╟┴╖╬▒╫╖Ñ └█╝║╟╧▒Γ</a></h2>
  178.     
  179.  
  180.     <p>``└╧╣▌└√└╬'' ╟┴╖╬▒╫╖í╣╓░· CGI ╟┴╖╬▒╫╖í╣╓ ╗τ└╠┐í┤┬ ╡╬░í┴÷
  181.     ┴╓╡╚ ┬≈└╠┴í└╠ └╓┤┘.</p>
  182.  
  183.     <p>├╣╣°┬░ ┬≈└╠┤┬ CGI ╟┴╖╬▒╫╖Ñ└║ ┤┘╕Ñ ├Γ╖┬└╗ ╟╧▒Γ└ⁿ┐í ╕╒└·
  184.     MIME-type ╟∞┤⌡╕ª ├Γ╖┬╟╪╛▀ ╟╤┤┘┤┬ ┴í└╠┤┘. HTTP ╟∞┤⌡┤┬
  185.     ┼¼╢≤└╠╛≡╞«┐í░╘ ┼¼╢≤└╠╛≡╞«░í ╛ε╢▓ │╗┐δ└╗ ╣▐░╘╡╔┴÷ ╣╠╕« ╛╦╕░┤┘.
  186.     ║╕┼δ ┤┘└╜░· ░░┤┘.</p>
  187.  
  188.     <div class="example"><p><code>
  189.       Content-type: text/html
  190.     </code></p></div>
  191.  
  192.     <p>╡╬╣°┬░ ┬≈└╠┤┬ HTML ╚ñ└║ ║Ω╢≤┐∞└·░í ║╕┐⌐┴┘ ╝÷ └╓┤┬ ╟ⁿ╜─└╕╖╬
  193.     ├Γ╖┬╟╪╛▀ ╟╤┤┘┤┬ ┴í└╠┤┘. ┤δ║╬║╨└╟ ░µ┐∞ HTML└╗ ├Γ╖┬╟╧┴÷╕╕,
  194.     ╢º╢º╖╬ gif ▒╫╕▓░· ░░└╠ HTML└╠ ╛╞┤╤ │╗┐δ└╗ ├Γ╖┬╟╧┤┬ CGI
  195.     ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╧┤┬ ░µ┐∞╡╡ └╓┤┘.</p>
  196.  
  197.     <p>╡╬░í┴÷╕ª ┴ª┐▄╟╧░φ┤┬ CGI ╟┴╖╬▒╫╖Ñ └█╝║└║ └╠╣╠ ╕╕╡Θ╛ε ║╕╛╥└╗
  198.     ┤┘╕Ñ ╟┴╖╬▒╫╖Ñ╡Θ░· ╕┼┐∞ ║±╜┴╟╧┤┘.</p>
  199.  
  200.     <h3><a name="firstcgi" id="firstcgi">├│└╜└╕╖╬ ╕╕╡τ CGI ╟┴╖╬▒╫╖Ñ</a></h3>
  201.       
  202.  
  203.       <p>┤┘└╜└║ ║Ω╢≤┐∞└·┐í ╟╤ ┴┘└╗ ┬∩┤┬ CGI ╟┴╖╬▒╫╖Ñ ┐╣┴ª┤┘.
  204.       ▒╫┤δ╖╬ <code>first.pl</code>└╠╢≤┤┬ ╞─└╧┐í └·└σ╟╧░φ,
  205.       <code>cgi-bin</code> ╡≡╖║┼Σ╕«┐í ║╣╗τ╟╤┤┘.</p>
  206.  
  207.       <div class="example"><p><code>
  208.         #!/usr/bin/perl<br />
  209.         print "Content-type: text/html\n\n";<br />
  210.         print "Hello, World.";
  211.       </code></p></div>
  212.  
  213.       <p>Perl┐í └═╝≈╟╧┴÷ ╛╩┤⌡╢≤╡╡ ╣½╜╝ └╧└╠ └╧╛ε│¬┤┬┴÷ ╛╦ ╝÷
  214.       └╓┤┘. ├╣╣°┬░ ┴┘└║ ╛╞╞──í(╚ñ└║ ╗τ┐δ╟╧┤┬ ╜⌐)┐í░╘
  215.       <code>/usr/bin/perl</code> └º─í┐í └╓┤┬ └╬┼═╟┴╕«┼═└╗ ╗τ┐δ╟╧┐⌐
  216.       └╠ ╟┴╖╬▒╫╖Ñ ╞─└╧└╗ ╜╟╟α╟╧╢≤░φ ╛╦╕░┤┘. ╡╬╣°┬░ ┴┘└║ ╣µ▒▌
  217.       ╕╗╟╤ content-type ╝▒╛≡└╗ ├Γ╖┬╟╧░φ carriage-return ┴┘╣┘▓▐└╗
  218.       ╡╬╣° ├Γ╖┬╟╤┤┘. ▒╫╖»╕Θ ╟∞┤⌡ ╡┌┐í HTTP ╟∞┤⌡└╟ │í└╗ ╢µ╟╧┤┬
  219.       ║≤┴┘└╠ ╗²▒Γ░φ, ║╗╣«└╠ ╜├└█╟╤┤┘. ╝╝╣°┬░ ┴┘└║ "Hello, World."
  220.       ╣«└┌┐¡└╗ ├Γ╖┬╟╤┤┘. └╠░═└╕╖╬ │í└╠┤┘.</p>
  221.  
  222.       <p>║Ω╢≤┐∞└·╕ª ╜╟╟α╟╧░φ ┴╓╝╥╕ª └╘╖┬╟╤┤┘</p>
  223.  
  224.       <div class="example"><p><code>
  225.         http://www.example.com/cgi-bin/first.pl
  226.       </code></p></div>
  227.  
  228.       <p>╞─└╧ └σ╝╥╕ª └╘╖┬╟╧╕Θ, ║Ω╢≤┐∞└·├ó┐í <code>Hello, World.</code>
  229.       ╟╤ ┴┘└╠ ║╕└╬┤┘. ╚∩║╨╡╟┴÷┤┬ ╛╩┴÷╕╕, ╟╤╣° ╡┐└█╟╧┤┬ ░═└╗
  230.       ║╕╛╥└╕┤╧ └╠┴ª ┤┘╕Ñ ░═└╗ ╜├╡╡╟╪ ║╝ ╝÷ └╓┤┘.</p>
  231.     
  232.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  233. <div class="section">
  234. <h2><a name="troubleshoot" id="troubleshoot">▒╫╖»│¬ ╛╞┴≈ ╡┐└█╟╧┴÷ ╛╩╛╞┐Σ!</a></h2>
  235.     
  236.  
  237.     <p>└Ñ┐í╝¡ CGI ╟┴╖╬▒╫╖Ñ┐í ┴ó▒┘╟╥╢º ║Ω╢≤┐∞└·┐í │¬┐├ ╝÷ └╓┤┬
  238.     │╗┐δ└║ ▒Γ║╗└√└╕╖╬ │╫░í┴÷┤┘.</p>
  239.  
  240.     <dl>
  241.       <dt>CGI ╟┴╖╬▒╫╖Ñ└╟ ├Γ╖┬</dt>
  242.       <dd>┴┴┤┘! ╕≡╡τ ░═└╠ └▀ ╡┐└█╟╤┤┘┤┬ ╢µ└╠┤┘. ├Γ╖┬└║ ┴ñ╚«╟╧┴÷╕╕
  243.       ║Ω╢≤┐∞└·░í ┐├╣┘╖╬ ├│╕«╟╧┴÷ ╕°╟╤┤┘╕Θ, CGI ╟┴╖╬▒╫╖Ñ┐í╝¡
  244.       ┐├╣┘╕Ñ <code>Content-Type</code>└╗ ╝│┴ñ╟╧┐┤┤┬┴÷ ╚«└╬╟╤┤┘.</dd>
  245.  
  246.       <dt>CGI ╟┴╖╬▒╫╖Ñ ╝╥╜║─┌╡σ ╚ñ└║ "POST Method Not Allowed"
  247.       ╣«▒╕</dt>
  248.       <dd>CGI ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╧╡╡╖╧ ╛╞╞──í╕ª └√└²╚≈ ╝│┴ñ╟╧┴÷
  249.       ╛╩╛╥┤┘┤┬ ╢µ└╠┤┘. <a href="#configuring">╛╞╞──í ╝│┴ñ╟╧▒Γ</a>
  250.       └²└╗ ┤┘╜├ └╨░φ ╗⌐╕╘└║ ║╬║╨└╠ └╓┤┬┴÷ ├ú╛╞║┴╢≤.</dd>
  251.  
  252.       <dt>"Forbidden"└╕╖╬ ╜├└█╟╧┤┬ ╣«▒╕</dt>
  253.       <dd>▒╟╟╤ ╣«┴ª░í └╓┤┘┤┬ ╢µ└╠┤┘. <a href="#errorlogs">╛╞╞──í
  254.       ┐└╖∙ ╖╬▒╫</a>┐═ ╛╞╖í <a href="#permissions">╞─└╧▒╟╟╤</a>
  255.       └²└╗ ╚«└╬╟╧╢≤.</dd>
  256.  
  257.       <dt>"Internal Server Error"╢≤┤┬ ╣«▒╕</dt>
  258.       <dd><a href="#errorlogs">╛╞╞──í ┐└╖∙ ╖╬▒╫</a>╕ª ║╕╕Θ ╛╞╕╢╡╡
  259.       CGI ╟┴╖╬▒╫╖Ñ└╠ ├Γ╖┬╟╤ ┐└╖∙╣«░· ╟╘▓▓ "Premature end of
  260.       script headers"░í ║╕└╧ ░═└╠┤┘. └╠ ░µ┐∞ ╛╞╖í │╗┐δ╡Θ└╗ ╟╧│¬╛┐
  261.       ╚«└╬╟╧┐⌐ ╛ε╢▓ └╠└»╖╬ CGI ╟┴╖╬▒╫╖Ñ└╠ └√└²╟╤ HTTP ╟∞┤⌡╕ª
  262.       ├Γ╖┬╟╧┴÷ ╕°╟▀┤┬┴÷ ╛╦╛╞║╗┤┘.</dd>
  263.     </dl>
  264.  
  265.     <h3><a name="permissions" id="permissions">╞─└╧▒╟╟╤</a></h3>
  266.       
  267.  
  268.       <p>╝¡╣÷┤┬ ┤τ╜┼░· ╡┐└╧╟╤ ░Φ┴ñ└╕╖╬ ╡┐└█╟╧┴÷ ╛╩└╜└╗ ╕φ╜╔╟╧╢≤.
  269.       ┴∩, ╝¡╣÷░í ╜├└█╟╧╕Θ ╝¡╣÷┤┬ ║±╞»▒╟ ╗τ┐δ└┌ ▒╟╟╤(║╕┼δ
  270.       <code>nobody</code>│¬ <code>www</code>)└╕╖╬ ╡┐└█╟╤┤┘.
  271.       ▒╫╖í╝¡ ┤τ╜┼└╠ ╝╥└»╟╤ ╞─└╧└╗ ╜╟╟α╟╧╖┴╕Θ ▒╟╟╤└╠ ╟╩┐Σ╟╧┤┘.
  272.       ╞─└╧┐í <code>nobody</code>░í ╜╟╟α╟╧▒Γ┐í ├µ║╨╟╤ ▒╟╟╤└╗
  273.       ┴╓▒Γ└º╟╪ ║╕┼δ ╕≡╡╬┐í░╘ ╞─└╧└╟ ╜╟╟α ▒╟╟╤└╗ ┴╪┤┘.</p>
  274.  
  275.       <div class="example"><p><code>
  276.         chmod a+x first.pl
  277.       </code></p></div>
  278.  
  279.       <p>╢╟, ╟┴╖╬▒╫╖Ñ└╠ ┤┘╕Ñ ╞─└╧└╗ └╨░┼│¬ ╛┤┤┘╕Θ └╠ ╞─└╧┐í╡╡
  280.       └√└²╟╤ ▒╟╟╤└╠ ╟╩┐Σ╟╧┤┘.</p>
  281.  
  282.     
  283.  
  284.     <h3><a name="pathinformation" id="pathinformation">░µ╖╬ ┴ñ║╕┐═ ╚»░µ</a></h3>
  285.       
  286.  
  287.       <p>╕φ╖╔╟α┐í╝¡ ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╧╕Θ └┌╡┐└╕╖╬ ╛ε╢▓ ┴ñ║╕░í
  288.       ╜⌐╖╬ └ⁿ┤▐╡╚┤┘. ┐╣╕ª ╡Θ╛ε, <code>PATH</code>┤┬ ╜⌐┐í░╘ ┤τ╜┼└╠
  289.       ╕╗╟╤ ╞─└╧└╗ ├ú└╗ └σ╝╥╕ª ╛╦╖┴┴╪┤┘.</p>
  290.  
  291.       <p>└Ñ╝¡╣÷░í ╟┴╖╬▒╫╖Ñ└╗ CGI ╟┴╖╬▒╫╖Ñ└╕╖╬ ╜╟╟α╟╥╢º┤┬
  292.       <code>PATH</code>░í ┤┘╕ª ╝÷ └╓┤┘. (┐╣╕ª ╡Θ╛ε,
  293.       <code>sendmail</code> ░░└╠) CGI ╟┴╖╬▒╫╖Ñ ╛╚┐í╝¡ ╜╟╟α╟╧┤┬
  294.       ╕φ╖╔╛ε┤┬ ┐╧└ⁿ╟╤ ░µ╖╬╖╬ ╕φ╜├╟╪╛▀ ╜⌐└╠ ╕φ╖╔╛ε╕ª ├ú└╗ ╝÷
  295.       └╓┤┘.</p>
  296.  
  297.       <p>░µ╖╬ ╣«┴ª┤┬ ┤┘└╜░· ░░└╠ CGI ╟┴╖╬▒╫╖Ñ ├╣╣°┬░ ┴┘┐í │¬┐└┤┬
  298.       ╜║┼⌐╕│╞« └╬┼═╟┴╕«┼═ (║╕┼δ <code>perl</code>) ░µ╖╬┐í╝¡
  299.       └┌┴╓ ╣▀╗²╟╤┤┘.</p>
  300.  
  301.       <div class="example"><p><code>
  302.         #!/usr/bin/perl
  303.       </code></p></div>
  304.  
  305.       <p>╜╟┴ª╖╬ └╬┼═╟┴╕«┼═└╟ ░µ╖╬└╬┴÷ ╚«└╬╟╤┤┘.</p>
  306.  
  307.       <p>╢╟, CGI ╟┴╖╬▒╫╖Ñ└╠ ┤┘╕Ñ <a href="#env">╚»░µ║»╝÷</a>╕ª
  308.       ╗τ┐δ╟╤┤┘╕Θ ╛╞╞──í░í └╠ ║»╝÷╡Θ└╗ ╟┴╖╬▒╫╖Ñ┐í░╘ └ⁿ┤▐╟╪╛▀
  309.       ╟╤┤┘.</p>
  310.  
  311.     
  312.  
  313.     <h3><a name="syntaxerrors" id="syntaxerrors">╟┴╖╬▒╫╖Ñ ┐└╖∙</a></h3>
  314.       
  315.  
  316.       <p>CGI ╟┴╖╬▒╫╖Ñ└╠ ╜╟╞╨╟╧┤┬ ░µ┐∞ ┤δ║╬║╨ ╟┴╖╬▒╫╖Ñ └┌├╝
  317.       ╣«┴ª╢º╣«└╠┤┘. ╞»╚≈ └º└╟ ╡╬░í┴÷ ╜╟╝÷╕ª ╟╧┴÷ ╛╩╛╥░φ └╠ ▒█└╗
  318.       ░Φ╝╙ ║╕░φ └╓┤┘╕Θ ┤⌡┤⌡┐φ ▒╫╖╕┤┘. ╕╒└· └Ñ╝¡╣÷┐í╝¡ ╜╟╟α╟╧▒Γ
  319.       └ⁿ┐í ╕φ╖╔╟α┐í╝¡ ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╪║╗┤┘. ┐╣╕ª ╡Θ╛ε, ┤┘└╜░·
  320.       ░░└╠ ╜╟╟α╟╤┤┘.</p>
  321.  
  322.       <div class="example"><p><code>
  323.       cd /usr/local/apache2/cgi-bin<br />
  324.       ./first.pl
  325.       </code></p></div>
  326.  
  327.       <p>(<code>perl</code> └╬┼═╟┴╕«┼═╕ª ╜╟╟α╟╧┴÷ ╕╢╢≤. ╜⌐░·
  328.       ╛╞╞──í┤┬ ╜║┼⌐╕│╞« ├╣╣°┬░ ┴┘┐í └╓┤┬ <a href="#pathinformation">░µ╖╬ ┴ñ║╕</a>╕ª ╗τ┐δ╟╧┐⌐ └╬┼═╟┴╕«┼═╕ª
  329.       ├ú╛╞╛▀ ╟╤┤┘.)</p>
  330.  
  331.       <p>╟┴╖╬▒╫╖Ñ└║ ┴ª└╧ ╕╒└· <code>Content-Type</code>└╗ ╞≈╟╘╟╤
  332.       HTTP ╟∞┤⌡╡Θ└╗ ├Γ╖┬╟╧░φ ║≤ ┴┘└╗ ├Γ╖┬╟╪╛▀ ╟╤┤┘. ┤┘╕Ñ ░═└╗
  333.       ├Γ╖┬╟╤┤┘╕Θ └Ñ╝¡╣÷┐í╝¡ ╜╟╟α╟╥ ░µ┐∞ ╛╞╞──í┤┬ <code>Premature
  334.       end of script headers</code>╕ª ╣▌╚»╟╤┤┘. └┌╝╝╟╤ │╗┐δ└║
  335.       └º└╟ <a href="#writing">CGI ╟┴╖╬▒╫╖Ñ └█╝║╟╧▒Γ</a>╕ª ┬ⁿ░φ╟╧╢≤.</p>
  336.     
  337.  
  338.     <h3><a name="errorlogs" id="errorlogs">┐└╖∙ ╖╬▒╫</a></h3>
  339.       
  340.  
  341.       <p>┐└╖∙ ╖╬▒╫┤┬ ┤τ╜┼ ╞φ└╠┤┘. ╣½╛≡░í └▀╕°╡╟╕Θ ┐└╖∙ ╖╬▒╫┐í
  342.       ╣«▒╕░í ╗²▒Σ┤┘. ┐└╖∙ ╖╬▒╫╕ª ┴ª└╧ ╕╒└· ╗∞╞∞║┴╛▀ ╟╤┤┘. └Ñ╗τ└╠╞«╕ª
  343.       ╚ú╜║╞├╟╧┤┬ ░≈┐í╝¡ ┐└╖∙ ╖╬▒╫╕ª ║╕┴÷ ╕°╟╧░╘ ╟╤┤┘╕Θ, ╛╞╕╢╡╡
  344.       ┤┘╕Ñ ╛≈├╝╕ª ╛╦╛╞║┴╛▀ ╟╤┤┘. ┐└╖∙ ╖╬▒╫╕ª ║╕┤┬ ╣µ╣²└╗ └═╚≈╕Θ,
  345.       ┤δ║╬║╨└╟ ╣«┴ª╕ª ╗í╕« ╞─╛╟╟╧┐⌐ ╟╪░ß╟╥ ╝÷ └╓┤┘.</p>
  346.     
  347.  
  348.     <h3><a name="suexec" id="suexec">Suexec</a></h3>
  349.       
  350.  
  351.       <p><a href="../suexec.html">suexec</a> ┴÷┐° ╟┴╖╬▒╫╖Ñ└╗
  352.       ╗τ┐δ╟╧╕Θ ╛ε╢▓ ░í╗≤╚ú╜║╞« ╚ñ└║ ╛ε╢▓ ╗τ┐δ└┌ ╡≡╖║┼Σ╕«┐í └╓┤┬┴÷┐í
  353.       ╡√╢≤ CGI ╟┴╖╬▒╫╖Ñ└╗ ┤┘╕Ñ ╗τ┐δ└┌ ▒╟╟╤└╕╖╬ ╜╟╟α╟╥ ╝÷ └╓┤┘.
  354.       Suexec┤┬ ╕┼┐∞ ╛÷░▌╟╧░╘ ▒╟╟╤└╗ ░╦╗τ╟╧╕τ, ░╦╗τ╕ª ╟╧│¬╢≤╡╡
  355.       ┼δ░·╟╧┴÷ ╕°╟╧╕Θ CGI ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╧┴÷ ╛╩░φ <code>Premature
  356.       end of script headers</code>╕ª ╣▌╚»╟╤┤┘.</p>
  357.  
  358.       <p>suexec╕ª ╗τ┐δ╟╧░φ └╓┤┬┴÷ ╛╦╖┴╕Θ <code>apachectl -V</code>╕ª
  359.       ╜╟╟α╟╧┐⌐ <code>SUEXEC_BIN</code> └º─í╕ª ╚«└╬╟╤┤┘. ╛╞╞──í░í
  360.       ╜├└█╟╥╢º ▒╫ └σ╝╥┐í╝¡ suexec ╜╟╟α╞─└╧└╗ ╣▀░▀╟╧╕Θ, suexec╕ª
  361.       ╗τ┐δ╟╥ ╝÷ └╓┤┘.</p>
  362.  
  363.       <p>suexec╕ª ┐╧└ⁿ╚≈ └╠╟╪╟╧┴÷ ╕°╟▀┤┘╕Θ ╗τ┐δ╟╪╝¡┤┬ ╛╚╡╚┤┘.
  364.       suexec╕ª ╗τ┐δ╟╧┴÷ ╛╩└╕╖┴╕Θ <code>SUEXEC_BIN</code> └º─í┐í
  365.       └╓┤┬ <code>suexec</code> ╜╟╟α╞─└╧└╗ ┴÷┐∞░φ (╚ñ└║ ╞─└╧╕φ└╗
  366.       ╣┘▓┘░φ) ╝¡╣÷╕ª └τ╜├└█╟╧╕Θ ╡╚┤┘. <a href="../suexec.html">suexec</a>┐í ┤δ╟╪ └╨└║ ┤┘└╜ ▒╫╖í╡╡
  367.       ╗τ┐δ╟╧░φ ╜═┤┘╕Θ, <code>suexec -V</code>╕ª ╜╟╟α╟╧┐⌐ suexec
  368.       ╖╬▒╫╞─└╧ └º─í╕ª ╛╦╛╞│╗░φ ╖╬▒╫╞─└╧┐í╝¡ ┤τ╜┼└╠ ╛ε╢▓ ▒╘─ó└╗
  369.       ╛ε▒Γ░φ └╓┤┬┴÷ ├ú┤┬┤┘.</p>
  370.     
  371.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  372. <div class="section">
  373. <h2><a name="behindscenes" id="behindscenes">╡┌┐í╝¡┤┬ ╣½╜╝ └╧└╠ ╣·╛ε┴÷┤┬░í?</a></h2>
  374.     
  375.  
  376.     <p>CGI ╟┴╖╬▒╫╖í╣╓┐í └═╝≈╟╪┴·╝÷╖╧ ╡┌┐í╝¡ ╣·╛ε┴÷┤┬ └╧└╗ └╠╟╪╟╧╕Θ
  377.     ╡╡┐≥└╠ ╡╚┤┘. ▒╕├╝└√└╕╖╬ ║Ω╢≤┐∞└·┐═ ╝¡╣÷░í ╝¡╖╬ ┼δ╜┼╟╧┤┬
  378.     ╣µ╣²└╗ ╕╗╟╧┤┬ ░═└╠┤┘. ╕⌠╢≤╡╡ "Hello, World."╕ª ├Γ╖┬╟╧┤┬
  379.     ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╥ ╝÷ └╓┴÷╕╕ └╠╖▒ ╟┴╖╬▒╫╖Ñ└║ ║░╖╬ ╛╡╕≡░í
  380.     ╛°▒Γ╢º╣«└╠┤┘.</p>
  381.  
  382.     <h3><a name="env" id="env">╚»░µ║»╝÷</a></h3>
  383.       
  384.  
  385.       <p>╚»░µ║»╝÷┤┬ ┤τ╜┼└╠ ──╟╗┼═╕ª ╗τ┐δ╟╧┤┬ ╡┐╛╚ ┤τ╜┼ ┴╓└º╕ª
  386.       ╢░┤┘┤╧┤┬ ░¬└╠┤┘. ╚»░µ║»╝÷┤┬ path (──╟╗┼═░í ┤τ╜┼└╠ └╘╖┬╟╤
  387.       ╕φ╖╔╛ε┐í ╟╪┤τ╟╧┤┬ ╜╟┴ª ╞─└╧└╗ ├ú┤┬ └σ╝╥), ╗τ┐δ└┌╕φ, ┼═╣╠│╬
  388.       ┴╛╖∙┐═ ░░└╠ └»┐δ╟╤ ┴ñ║╕┤┘. └╧╣▌└√└╬ ╚»░µ║»╝÷╕ª ╕≡╡╬ ║╕╖┴╕Θ
  389.       ╕φ╖╔╟α ╟┴╖╥╟┴╞«┐í╝¡ <code>env</code>╕ª └╘╖┬╟╤┤┘.</p>
  390.  
  391.       <p>CGI╕ª ╜╟╟α╟╥╢º╡╡ ╝¡╣÷┐═ ║Ω╢≤┐∞└·┤┬ ░ó└┌└╟ ╚»░µ║»╝÷╕ª
  392.       ╝¡╖╬ ▒│╚»╟╤┤┘. └╠ ┴ñ║╕┐í┤┬ ║Ω╢≤┐∞└· ┴╛╖∙ (Netscape, IE,
  393.       Lynx), ╝¡╣÷ ┴╛╖∙ (╛╞╞──í, IIS, WebSite), ╜╟╟α╟╧┤┬ CGI
  394.       ╟┴╖╬▒╫╖Ñ╕φ ╡ε└╠ └╓┤┘.</p>
  395.  
  396.       <p>CGI ╟┴╖╬▒╫╖í╕╙┤┬ └╠╖▒ ║»╝÷╡Θ└╗ ╗τ┐δ╟╥ ╝÷ └╓░φ,
  397.       ╚»░µ║»╝÷┤┬ ┼¼╢≤└╠╛≡╞«-╝¡╣÷ ┼δ╜┼┐í┤┬ └╧║╬║╨└╗ ┬≈┴÷╟╤┤┘.
  398.       └ⁿ├╝ ╟╩╝÷ ║»╝÷ ╕±╖╧└║ <a href="http://hoohoo.ncsa.uiuc.edu/cgi/env.html">http://hoohoo.ncsa.uiuc.edu/cgi/env.html</a>┐í └╓┤┘.</p>
  399.  
  400.       <p>╛╞╖í ░ú┤▄╟╤ Perl CGI ╟┴╖╬▒╫╖Ñ└║ └┌╜┼┐í░╘ └ⁿ┤▐╡╚ ╕≡╡τ
  401.       ╚»░µ║»╝÷╕ª ║╕┐⌐┴╪┤┘. ╛╞╞──í ╣Φ╞≈║╗└╟ <code>cgi-bin</code>
  402.       ╡≡╖║┼Σ╕«┐í └╠┐═ ║±╜┴╟╤ ╟┴╖╬▒╫╖Ñ└╠ ╡╬░│ └╓┤┘. ╕ε╕ε ║»╝÷┤┬
  403.       ╟╩╝÷└╠░φ │¬╕╙┴÷┤┬ ╝▒┼├└√└╠┤┘. ▒╫╖í╝¡ ░°╜─ ╕±╖╧┐í ╛°┤┬
  404.       ║»╝÷╡╡ ║╕└╬┤┘. ╢╟, ╛╞╞──í┤┬ ▒Γ║╗└√└╕╖╬ ┴ª░°╟╧┤┬ ╚»░µ║»╝÷
  405.       ┐▄┐í ┐⌐╖»░í┴÷ ╣µ╣²└╕╖╬ <a href="../env.html">┴≈┴ó ╚»░µ║»╝÷╕ª
  406.       ├▀░í╟╥ ╝÷ └╓┤┘</a>.</p>
  407.  
  408.       <div class="example"><p><code>
  409.         #!/usr/bin/perl<br />
  410.         print "Content-type: text/html\n\n";<br />
  411.         foreach $key (keys %ENV) {<br />
  412.         <span class="indent">
  413.           print "$key --> $ENV{$key}<br>";<br />
  414.         </span>
  415.         }
  416.       </code></p></div>
  417.     
  418.  
  419.     <h3><a name="stdin" id="stdin">STDIN░· STDOUT</a></h3>
  420.       
  421.  
  422.       <p>╢╟, ╝¡╣÷┐═ ┼¼╢≤└╠╛≡╞«┤┬ ╟Ñ┴╪└╘╖┬(<code>STDIN</code>)░·
  423.       ╟Ñ┴╪├Γ╖┬(<code>STDOUT</code>)└╕╖╬ ┼δ╜┼╟╤┤┘. └╧╗≤└√└╬ ░µ┐∞
  424.       <code>STDIN</code>└║ ┼░║╕╡σ│¬ ╟┴╖╬▒╫╖Ñ└╠ ├│╕«╟╧┤┬ ╞─└╧└╗
  425.       │¬┼╕│╗░φ, <code>STDOUT</code>└║ ║╕┼δ ─▄╝╓└╠│¬ ╚¡╕Θ└╗ ╢µ╟╤┤┘.</p>
  426.  
  427.       <p>CGI ╟┴╖╬▒╫╖Ñ┐í░╘ └Ñ ╛τ╜─(form)└╗ <code>POST</code>╟╧╕Θ
  428.       ╛τ╜─┐í └╘╖┬╟╤ └┌╖ß╕ª ╞»║░╟╤ ╟ⁿ╜─└╕╖╬ ╣¡╛ε╝¡ CGI ╟┴╖╬▒╫╖Ñ└╟
  429.       <code>STDIN</code>└╕╖╬ └ⁿ┤▐╟╤┤┘. ▒╫╖»╕Θ ╟┴╖╬▒╫╖Ñ└║ ┼░║╕╡σ│¬
  430.       ╞─└╧┐í╝¡ ╛≥└║ └┌╖ß╕ª ├│╕«╟╧╡φ└╠ └┌╖ß╕ª ├│╕«╟╥ ╝÷ └╓┤┘.</p>
  431.  
  432.       <p>"╞»║░╟╤ ╟ⁿ╜─"└║ ╕┼┐∞ ░ú┤▄╟╧┤┘. ╟╫╕± └╠╕º░· ░¬└╗ ╡ε╚ú(=)╖╬
  433.       ┐¼░ß╟╧░φ, ╟╫╕± └╠╕º░· ░¬└╟ ╜╓╡Θ└╗ ╝¡╖╬ ╛╪╞█╗≈╡σ(&)╖╬
  434.       ┐¼░ß╟╤┤┘. ░°╣Θ, ╛┌╞█╗≈╡σ, ╡ε╚ú ░░└║ ║╬└┌┐¼╜║╖»┐ε ╣«└┌┤┬
  435.       ╚Ñ╡┐╟╧┴÷ ╛╩╡╡╖╧ 16┴°╝÷╖╬ ║»╚»╟╤┤┘. ┐╧└ⁿ╟╤ └┌╖ß ╣«└┌┐¡└║
  436.       ┤┘└╜░· ░░└╠ ╗²░σ┤┘.</p>
  437.  
  438.       <div class="example"><p><code>
  439.         name=Rich%20Bowen&city=Lexington&state=KY&sidekick=Squirrel%20Monkey
  440.       </code></p></div>
  441.  
  442.       <p>┴╛┴╛ URL ╡┌┐í╝¡ └╠╖▒ ╣«└┌┐¡└╗ ║╕░╘ ╡╚┤┘. └╠ ░µ┐∞ ╝¡╣÷┤┬
  443.       ╣«└┌┐¡└╗ <code>QUERY_STRING</code>└╠╢≤┤┬ ╚»░µ║»╝÷┐í └·└σ╟╤┤┘.
  444.       └╠╕ª <code>GET</code> ┐Σ├╗└╠╢≤░φ ╟╤┤┘. <code>FORM</code>
  445.       ┼┬▒╫└╟ <code>METHOD</code> ╝╙╝║└╗ ┴÷┴ñ╟╧┐⌐ HTML ╛τ╜─(form)└╠
  446.       └┌╖ß╕ª <code>GET</code>╟╥┴÷ <code>POST</code>╟╥┴÷ ░ß┴ñ╟╤┤┘.</p>
  447.  
  448.       <p>└╠┴ª ╟┴╖╬▒╫╖Ñ└║ └╠╖▒ ╣«└┌┐¡└╗ └»┐δ╟╤ ┴ñ║╕╖╬ ┬╔░│╛▀
  449.       ╟╤┤┘.  ┤┘╟α╚≈╡╡ └╠╖▒ └┌╖ß ├│╕«╕ª ╡╜░φ CGI ╟┴╖╬▒╫╖Ñ└╟ ┤┘╕Ñ
  450.       ┐⌐╖» ╕Θ└╗ ╗∞╟╟┤┬ ╢≤└╠║Ω╖»╕«┐═ ╕≡╡Γ╡Θ└╠ └╓┤┘.</p>
  451.     
  452.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  453. <div class="section">
  454. <h2><a name="libraries" id="libraries">CGI ╕≡╡Γ/╢≤└╠║Ω╖»╕«</a></h2>
  455.     
  456.  
  457.     <p>CGI ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╥╢º ┴÷╖τ╟╤ └█╛≈└╗ ┤δ╜┼╟╪┴╓┤┬ ─┌╡σ
  458.     ╢≤└╠║Ω╖»╕« ╚ñ└║ ╕≡╡Γ└╗ ╗τ┐δ╟╥┴÷ ░φ╖┴╟╪║┴╛▀ ╟╤┤┘. └╠╖▒ ░═└╗
  459.     ╗τ┐δ╟╧╕Θ ╣÷▒╫░í ┴┘░φ ┤⌡ ╗í╕« ╟┴╖╬▒╫╖Ñ└╗ ░│╣▀╟╥ ╝÷ └╓┤┘.</p>
  460.  
  461.     <p>Perl╖╬ CGI ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╤┤┘╕Θ <a href="http://www.cpan.org/">CPAN</a>┐í╝¡ ░ⁿ╖├ ╕≡╡Γ╡Θ└╗ ├ú└╗
  462.     ╝÷ └╓┤┘. CGI ░│╣▀┐í ░í└σ │╬╕« ╗τ┐δ╡╟┤┬ ╕≡╡Γ└║
  463.     <code>CGI.pm</code>└╠┤┘. ┤δ║╬║╨└╟ ╟┴╖╬▒╫╖Ñ┐í ├µ║╨╟╤ ├╓╝╥
  464.     ▒Γ┤╔└╗ ▒╕╟÷╟╤ <code>CGI::Lite</code>╡╡ ░φ╖┴╟╪ ║╝ ╝÷ └╓┤┘.</p>
  465.  
  466.     <p>C╖╬ CGI ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╤┤┘╕Θ ╝▒┼├└╟ ┐⌐┴÷░í ╕╣┤┘. └╠┴▀
  467.     ╟╧│¬░í <a href="http://www.boutell.com/cgic/">http://www.boutell.com/cgic/</a>┐í
  468.     └╓┤┬ <code>CGIC</code> ╢≤└╠║Ω╖»╕«┤┘.</p>
  469.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  470. <div class="section">
  471. <h2><a name="moreinfo" id="moreinfo">┤⌡ ╕╣└║ ┴ñ║╕...</a></h2>
  472.     
  473.  
  474.     <p>└Ñ┐í ╕┼┐∞ ╕╣└║ CGI ┴ñ║╕░í └╓┤┘. ┤║╜║▒╫╖∞ <a href="news:comp.infosystems.www.authoring.cgi">comp.infosystems.www.authoring.cgi</a>┐í╝¡ ┐⌐╖» ╗τ╢≈╡Θ░·
  475.     CGI ╣«┴ª╕ª │φ└╟╟╥ ╝÷ └╓┤┘. HTML Writers Guild└╟ -servers
  476.     ╕▐└╧╕╡╕«╜║╞«┤┬ ┴·╣«┐í ┤δ╟╤ ┤Σ└╗ ├ú▒Γ┐í ╚╟╕ó╟╤ └σ╝╥┤┘. <a href="http://www.hwg.org/lists/hwg-servers/">http://www.hwg.org/lists/hwg-servers/</a>┐í╝¡ ┤⌡ ╕╣└║ ░═└╗
  477.     ╛╦ ╝÷ └╓┤┘.</p>
  478.  
  479.     <p>▒╫╕«░φ ╣░╖╨ CGI ╟┴╖╬▒╫╖Ñ ╡┐└█┐í ┤δ╟╤ ╕≡╡τ │╗┐δ└╗ ╝│╕φ╟╤
  480.     CGI ▒╘╛α└╗ └╨╛ε╛▀ ╟╥┴÷╡╡ ╕≡╕Ñ┤┘. <a href="http://hoohoo.ncsa.uiuc.edu/cgi/interface.html">NCSA</a>┐í
  481.     ┐°║╗ ╣«╝¡░í └╓░φ, ╝÷┴ñ╟╤ ├╩╛╚└║ <a href="http://web.golux.com/coar/cgi/">Common Gateway Interface
  482.     RFC ╟┴╖╬┴º╞«</a>┐í └╓┤┘.</p>
  483.  
  484.     <p>╕▐└╧╕╡╕«╜║╞«│¬ ┤║╜║▒╫╖∞┐í ╟÷└τ ░▌░φ └╓┤┬ CGI ╣«┴ª┐í ┤δ╟╪
  485.     ┴·╣«╟╥╢º┤┬ ╣▀╗²╟╤ ╟÷╗≤░· ┐°╖í ▒Γ┤δ╟╤ ░ß░·, ╜╟┴ª╖╬ ╣▀╗²╟╤
  486.     ╟÷╗≤└╠ ╛ε╢╗░╘ ┤┘╕Ñ┴÷, ╗τ┐δ╟╧┤┬ ╝¡╣÷, CGI ╟┴╖╬▒╫╖Ñ└╗ └█╝║╟╤
  487.     ╛≡╛ε, ░í┤╔╟╧╕Θ ╟╪┤τ ─┌╡σ╕ª └┌╝╝╚≈ └√╛ε╢≤. ▒╫╖»╕Θ ╟╪░ß├Ñ└╗
  488.     ├ú▒Γ ╜¼┐÷┴°┤┘.</p>
  489.  
  490.     <p>╛╞╞──í ╝╥╜║─┌╡σ░í └▀╕°╡╟╛·┤┘░φ ╚«╜┼╟╧┴÷ ╛╩┤┬ ╟╤ CGI ┴·╣«└╗
  491.     ╛╞╞──í ╣÷▒╫ ╡Ñ└╠┼═║ú└╠╜║┐í ┐├╕«╕Θ <strong>└²┤δ╖╬</strong>
  492.     ╛╚╡╚┤┘.</p>
  493.   </div></div>
  494. <div class="bottomlang">
  495. <p><span>░í┤╔╟╤ ╛≡╛ε: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
  496. <a href="../ja/howto/cgi.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
  497. <a href="../ko/howto/cgi.html" title="Korean"> ko </a></p>
  498. </div><div id="footer">
  499. <p class="apache">Copyright 1999-2004 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>
  500. <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>
  501. </body></html>