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 / F277906_rewriteguide.html.ko.euckr < prev    next >
Extensible Markup Language  |  2004-09-06  |  66KB  |  2,011 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>URL └τ└█╝║ ┴÷─º╝¡ - 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="./">Miscellaneous Documentation</a></div><div id="page-content"><div id="preamble"><h1>URL └τ└█╝║ ┴÷─º╝¡</h1>
  20. <div class="toplang">
  21. <p><span>░í┤╔╟╤ ╛≡╛ε: </span><a href="../en/misc/rewriteguide.html" hreflang="en" rel="alternate" title="English"> en </a> |
  22. <a href="../ko/misc/rewriteguide.html" title="Korean"> ko </a></p>
  23. </div>
  24.  
  25.     <div class="note">
  26.       <p>┐°└·└┌<br />
  27.       <cite>Ralf S. Engelschall <rse@apache.org></cite><br />
  28.       1997│Γ 12┐∙</p>
  29.     </div>
  30.  
  31.     <p>└╠ ╣«╝¡┤┬ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> <a href="../mod/mod_rewrite.html">┬ⁿ┴╢ ╣«╝¡</a>╕ª ║╕├µ╟╤┤┘.
  32.     └╠ ╣«╝¡┤┬ └Ñ░ⁿ╕«└┌░í ╜╟┴ª └█╛≈┐í╝¡ ║╬╡·─í░╘╡╟┤┬ └ⁿ╟ⁿ└√└╬
  33.     URL░ⁿ╖├ ╣«┴ª╕ª ╟╪░ß╟╧▒Γ└º╟╪╝¡ ╛ε╢╗░╘ ╛╞╞──í
  34.     <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧┤┬┴÷ ╝│╕φ╟╤┤┘. URL
  35.     └τ└█╝║ ▒╘─ó└╗ ╝│┴ñ╟╧┐⌐ ╣«┴ª╕ª ╟╪░ß╟╧┤┬ ╣µ╣²└╗ └┌╝╝╚≈ ╝│╕φ╟╤┤┘.</p>
  36.  
  37.   </div>
  38. <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#ToC1"><code>mod_rewrite</code> ╝╥░│</a></li>
  39. <li><img alt="" src="../images/down.gif" /> <a href="#ToC2">╜╟┐δ└√└╬ ╟╪░ß├Ñ</a></li>
  40. <li><img alt="" src="../images/down.gif" /> <a href="#url">URL ▒╕┴╢</a></li>
  41. <li><img alt="" src="../images/down.gif" /> <a href="#content">─┴┼┘├≈ ┤┘╖τ▒Γ</a></li>
  42. <li><img alt="" src="../images/down.gif" /> <a href="#access">┴ó▒┘ ┴ª╟╤</a></li>
  43. <li><img alt="" src="../images/down.gif" /> <a href="#other">▒Γ┼╕</a></li>
  44. </ul></div>
  45. <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  46. <div class="section">
  47. <h2><a name="ToC1" id="ToC1"><code>mod_rewrite</code> ╝╥░│</a></h2>
  48.  
  49.     
  50.  
  51.     <p>╛╞╞──í <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> ╕≡╡Γ└║ ▒▓└σ╟╧┤┘.
  52.     ┴∩, URL└╗ ┴╢└█╟╥ ╝÷ └╓┤┬ ░¡╖┬╟╧░φ ╜╟╖╬ ┴ñ▒│╟╤ ╕≡╡Γ└╠┤┘.
  53.     ╗≤╗≤╟╪┐╘┤° ░┼└╟ ╕≡╡τ ┴╛╖∙└╟ URL ┴╢└█└╠ ░í┤╔╟╧┤┘. ▒╫╖»│¬
  54.     ▒╫ ┤δ░í╖╬ ╗τ┐δ╟╧▒Γ ║╣└Γ╟╧┤┘. <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>└╟
  55.     ├╓┤δ ┤▄┴í└║ ├╩║╕└┌░í └╠╟╪╟╧░φ ╗τ┐δ╟╧▒Γ ╜▒┴÷ ╛╩┤┘┤┬ ┴í└╠┤┘.
  56.     ╜╔┴÷╛ε ╛╞╞──í └ⁿ╣«░í╡╡ ┴╛┴╛ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>└╟
  57.     ╗⌡╖╬┐ε ┐δ╡╡╕ª ╣▀░▀╟╤┤┘.</p>
  58.  
  59.     <p>┤┘╕Ñ ╕╗╖╬: <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>┐í ┤δ╟╪ ┤τ╜┼└║
  60.     ├│└╜┐í ░╠└╗ ╕╘░φ └²┤δ╖╬ ┤┘╜├ ╗τ┐δ╟╧┴÷ ╛╩░┼│¬, ░¡╖┬╟╘┐í ╕┼╖ß╡╟╛ε
  61.     ╛╒└╕╖╬ ╗ε ╡┐╛╚ ╗τ╢√┐í ║ⁿ┴· ░═└╠┤┘. └╠ ▒█└║ ├╣╣°┬░ ░µ┐∞╕ª
  62.     ╕╖▒Γ└º╟╪ └╠╣╠ ╛╦╖┴┴° ╕ε░í┴÷ ╝║░°╗τ╖╩╕ª ╝╥░│╟╧╖┴░φ ╟╤┤┘.</p>
  63.  
  64.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  65. <div class="section">
  66. <h2><a name="ToC2" id="ToC2">╜╟┐δ└√└╬ ╟╪░ß├Ñ</a></h2>
  67.  
  68.     
  69.  
  70.     <p>└╠┴ª │╗░í ┴≈┴ó ╕╕╡Θ╛·░┼│¬ ┤┘╕Ñ ╗τ╢≈╡Θ└╠ ╕╕╡τ ╕╣└║ ╜╟┐δ└√└╬
  71.     ╟╪░ß├Ñ└╠ │¬┐┬┤┘. ┐╣┴ª┐í╝¡ URL └τ└█╝║└╟ ╚µ╕╢╝·└╗ ╕╢└╜▓» ╣Φ┐∞▒µ
  72.     ╣┘╢⌡┤┘.</p>
  73.  
  74.     <div class="warning">┴╓└╟: ╝¡╣÷ ╝│┴ñ┐í ╡√╢≤ ╗≤╚▓┐í ╕┬░╘
  75.     ┐╣┴ª╕ª ┴╢▒▌ ╝÷┴ñ╟╪╛▀ ╟╥ ░µ┐∞░í └╓┤┘. ┐╣╕ª ╡Θ╛ε, ├▀░í╖╬
  76.     <code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code>, <code class="module"><a href="../mod/mod_userdir.html">mod_userdir</a></code>
  77.     ╡ε└╗ ╗τ┐δ╟╤┤┘╕Θ <code>[PT]</code> ╟├╖í▒╫╕ª ├▀░í╟╤┤┘. ╚ñ└║
  78.     ┴╓╝¡╣÷╝│┴ñ/░í╗≤╚ú╜║╞« ╗τ┐δ└σ╝╥░í ╛╞┤╤ <code>.htaccess</code>
  79.     ╗τ┐δ└σ╝╥┐í ╛╦╕┬░╘ ▒╘─ó└╗ ╝÷┴ñ╟╥ ╝÷╡╡ └╓┤┘. ╗τ┐δ╟╧▒Γ └ⁿ┐í
  80.     ╟╫╗≤ ▒╘─ó└╠ ╛ε╢▓ ▒Γ┤╔└╗ ╟╧┤┬┴÷ └╠╟╪╟╧╡╡╖╧ ╟╪╢≤. ▒╫╖»╕Θ ╣«┴ª╕ª
  81.     ╟╟╟╥ ╝÷ └╓┤┘.</div>
  82.  
  83.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  84. <div class="section">
  85. <h2><a name="url" id="url">URL ▒╕┴╢</a></h2>
  86.  
  87.     
  88.  
  89.     <h3>▒Γ┴╪└╠ ╡╟┤┬ URL</h3>
  90.  
  91.       
  92.  
  93.       <dl>
  94.         <dt>╗≤╚▓╝│╕φ:</dt>
  95.  
  96.         <dd>
  97.           <p>╟╤ ╕«╝╥╜║┐í ┤δ╟╪ ┐⌐╖» URL└╗ ░í┴÷┤┬ └Ñ╝¡╣÷░í └╓┤┘.
  98.           ║╕┼δ (╜╟┴ª ╗τ┐δ╟╧░φ ╛╦╖┴┴«╛▀ ╟╥) ▒Γ┴╪└╠ ╡╟┤┬ URL░·,
  99.           ┤▄├α ╚ñ└║ │╗║╬ ┐δ╡╡└╟ URL└╠ └╓┤┘. ╗τ┐δ└┌░í ┐Σ├╗┐í
  100.           ╛ε╢▓ URL└╗ ╗τ┐δ╟╧┤°┴÷ ▒Γ┴╪└╠ ╡╟┤┬ URL╕╕└╗ ║╕┐⌐┴α╛▀
  101.           ╟╤┤┘.</p>
  102.         </dd>
  103.  
  104.         <dt>╟╪░ß├Ñ:</dt>
  105.  
  106.         <dd>
  107.           <p>▒Γ┴╪└╠ ╡╟┴÷╛╩┤┬ ╕≡╡τ URL└╗ ║Ω╢≤┐∞└·░í ╛╦╡╡╖╧ ░φ─í▒Γ└º╟╪
  108.           ┐▄║╬ HTTP ╕«┤┘└╠╖║╝╟╟╤┤┘. ┐╣╕ª ╡Θ╛ε ╛╞╖í ▒╘─ó└║
  109.           <code>/~user</code>╕ª ▒Γ┴╪└╠ ╡╟┤┬ <code>/u/user</code>╖╬
  110.           ┤δ├╝╟╧░φ, <code>/u/user</code> ╕╢┴÷╕╖┐í ╜╜╖í╜¼░í ╛°┤┘╕Θ
  111.           ├▀░í╟╤┤┘.</p>
  112.  
  113. <div class="example"><pre>
  114. RewriteRule   ^/<strong>~</strong>([^/]+)/?(.*)    /<strong>u</strong>/$1/$2  [<strong>R</strong>]
  115. RewriteRule   ^/([uge])/(<strong>[^/]+</strong>)$  /$1/$2<strong>/</strong>   [<strong>R</strong>]
  116. </pre></div>
  117.         </dd>
  118.       </dl>
  119.  
  120.     
  121.  
  122.     <h3>▒Γ┴╪└╠ ╡╟┤┬ ╚ú╜║╞«╕φ</h3>
  123.  
  124.       
  125.  
  126.       <dl>
  127.         <dt>╗≤╚▓╝│╕φ:</dt>
  128.  
  129.         <dd>└╠ ▒╘─ó└║ ╡┐└╧╟╤ ╗τ└╠╞«┐í ╡╡┤▐╟╥ ╝÷ └╓┤┬ ┤┘╕Ñ ╚ú╜║╞«╕φ
  130.         ┤δ╜┼ ╞»┴ñ ╚ú╜║╞«╕φ└╗ ╗τ┐δ╟╧╡╡╖╧ ░¡┴ª╟╤┤┘. ┐╣╕ª ╡Θ╛ε,
  131.         <strong>example.com</strong> ┤δ╜┼
  132.         <strong>www.example.com</strong>└╗ ╗τ┐δ╟╧╡╡╖╧ ░¡┴ª╟╧░φ
  133.         ╜═┤┘╕Θ ┤┘└╜░· ░░└║ ▒╘─ó└╗ ╗τ┐δ╟╥ ╝÷ └╓┤┘.</dd>
  134.  
  135.         <dt>╟╪░ß├Ñ:</dt>
  136.  
  137.         <dd>
  138. <div class="example"><pre>
  139. # 80╣°└╠ ╛╞┤╤ ╞≈╞«┐í╝¡ ╜╟╟α╟╧┤┬ ╗τ└╠╞«┐δ
  140. RewriteCond %{HTTP_HOST}   !^fully\.qualified\.domain\.name [NC]
  141. RewriteCond %{HTTP_HOST}   !^$
  142. RewriteCond %{SERVER_PORT} !^80$
  143. RewriteRule ^/(.*)         http://fully.qualified.domain.name:%{SERVER_PORT}/$1 [L,R]
  144.  
  145. # ▒╫╕«░φ, 80╣° ╞≈╞«┐í╝¡ ╜╟╟α╟╧┤┬ ╗τ└╠╞«┐δ
  146. RewriteCond %{HTTP_HOST}   !^fully\.qualified\.domain\.name [NC]
  147. RewriteCond %{HTTP_HOST}   !^$
  148. RewriteRule ^/(.*)         http://fully.qualified.domain.name/$1 [L,R]
  149. </pre></div>
  150.         </dd>
  151.       </dl>
  152.  
  153.     
  154.  
  155.     <h3><code>DocumentRoot</code>╕ª ┐┼▒Σ ░µ┐∞</h3>
  156.  
  157.       
  158.  
  159.       <dl>
  160.         <dt>╗≤╚▓╝│╕φ:</dt>
  161.  
  162.         <dd>
  163.           <p>└Ñ╝¡╣÷└╟ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>┤┬ ║╕┼δ URL
  164.           "<code>/</code>"░· ┴≈┴ó ░ⁿ╖├└╓┤┘. ▒╫╖»│¬ └╠░≈┐í ╕≡╡τ
  165.           └┌╖ß░í └╓┴÷ ╛╩░φ, └┌╖ß░í ┤┘╕Ñ ┐⌐╖» ░≈┐í ╚≡╛ε┴«└╓┤┬
  166.           ░µ┐∞░í └╓┤┘. ┐╣╕ª ╡Θ╛ε └╬╞«╢≤│▌ ╗τ└╠╞«┐í (┐▄║╬╕ª └º╟╤
  167.           ╚¿╞Σ└╠┴÷) <code>/e/www/</code>┐═ (└╬╞«╢≤│▌└╗ └º╟╤
  168.           ╚¿╞Σ└╠┴÷) <code>/e/sww/</code>░í └╓┤┘░φ ╟╧└┌. └╠┴ª
  169.           <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>░í
  170.           <code>/e/www/</code>└╠▒Γ╢º╣«┐í, ┐Σ├╗┐í╝¡ ╞Σ└╠┴÷┐í
  171.           ╞≈╟╘╡╚ ▒╫╕▓ ╡ε└╗ └╠░≈┐í╝¡ ░í┴«┐═╛▀ ╟╤┤┘.</p>
  172.         </dd>
  173.  
  174.         <dt>╟╪░ß├Ñ:</dt>
  175.  
  176.         <dd>
  177.           <p>┐∞╕«┤┬ URL <code>/</code>╕ª <code>/e/www/</code>╖╬
  178.           ╕«┤┘└╠╖║╝╟╕╕ ╟╧╕Θ ╡╚┤┘. ╗τ╝╥╟╪ ║╕└╠┴÷╕╕ ╜╟┴ª╖╬
  179.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╪╝¡╕╕ ░í┤╔╟╧┤┘.
  180.           (<code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code> ╡ε└╠ ┴ª░°╟╧┤┬) URL
  181.           <em>Alias</em> ░░└║ └ⁿ╟ⁿ└√└╬ ╣µ╣²└║ <em>╛╒║╬║╨</em>╕╕
  182.           ├ú┤┬┤┘. <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>░í
  183.           ╕≡╡τ URL└╟ ╛╒║╬║╨└╠▒Γ╢º╣«┐í └╠ ╣µ╣²└╗ ╗τ┐δ╟╧┐⌐ ╕«┤┘└╠╖║╝╟└╗
  184.           ╟╥ ╝÷ ╛°┤┘. <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧╕Θ
  185.           ┴°┬Ñ ░ú┤▄╟╧┤┘:</p>
  186.  
  187. <div class="example"><pre>
  188. RewriteEngine on
  189. RewriteRule   <strong>^/$</strong>  /e/www/  [<strong>R</strong>]
  190. </pre></div>
  191.         </dd>
  192.       </dl>
  193.  
  194.     
  195.  
  196.     <h3>╕╢┴÷╕╖ ╜╜╖í╜¼ ╣«┴ª</h3>
  197.  
  198.       
  199.  
  200.       <dl>
  201.         <dt>╗≤╚▓╝│╕φ:</dt>
  202.  
  203.         <dd>
  204.           <p>╡≡╖║┼Σ╕«╕ª ┴÷─¬╟╧┤┬ URL└╟ ╕╢┴÷╕╖ ╜╜╖í╜¼ ╣«┴ª░í
  205.           ╛°┤┘╕Θ ╕≡╡τ └Ñ░ⁿ╕«└┌┤┬ ╚»╚ú╟╥ ░═└╠┤┘. ╜╜╖í╜¼░í ╛°┤┘╕Θ,
  206.           ┴∩ <code>/~quux/foo/</code> ┤δ╜┼ <code>/~quux/foo</code>╕ª
  207.           ╗τ┐δ╟╧╕Θ ╝¡╣÷░í <code>foo</code>╢≤┤┬ <em>╞─└╧</em>└╗
  208.           ├ú▒Γ╢º╣«┐í ┐└╖∙░í ╣▀╗²╟╤┤┘. ╞─└╧└╠ ╡≡╖║┼Σ╕«└╠▒Γ╢º╣«┐í
  209.           ╣▐╛╞╡Θ└╠┴÷ ╛╩┤┬┤┘. ┤δ║╬║╨└╟ ░µ┐∞ ║╕┼δ ╝¡╣÷░í └┌╡┐└╕╖╬
  210.           URL└╗ ░φ─í┴÷╕╕, ░í▓√ ┴≈┴ó ╟╪┴α╛▀ ╟╥ ░µ┐∞░í └╓┤┘. ┐╣╕ª
  211.           ╡Θ╛ε, CGI ╜║┼⌐╕│╞« ╡ε└╕╖╬ ║╣└Γ╟╤ URL └τ└█╝║└╗ ╟╤ ╚─┐í
  212.           ▒╫╖»╟╧┤┘.</p>
  213.         </dd>
  214.  
  215.         <dt>╟╪░ß├Ñ:</dt>
  216.  
  217.         <dd>
  218.           <p>└╠ ╣╠╣ª╟╤ ╣«┴ª└╟ ╟╪░ß╣µ╣²└║ ╝¡╣÷░í └┌╡┐└╕╖╬ ╕╢┴÷╕╖
  219.           ╜╜╖í╜¼╕ª ├▀░í╟╧┤┬ ░═└╠┤┘. ║Ω╢≤┐∞└·░í │¬╕╙┴÷ ▒╫╕▓ ╡ε└╗
  220.           ┐├╣┘╖╬ ┐Σ├╗╟╥ ╝÷ └╓╡╡╖╧, ┐▄║╬ ╕«┤┘└╠╖║╝╟└╗ ╟╪╛▀ ╟╤┤┘.
  221.           │╗║╬ ╕«┤┘└╠╖║╝╟└╗ ╟╤┤┘╕Θ ╡≡╖║┼Σ╕« ╞Σ└╠┴÷┐í╕╕ ╡┐└█╟╧┐⌐
  222.           └╠ ╞Σ└╠┴÷░í ╗≤┤δ URL╖╬ ╞≈╟╘╟╧┤┬ ▒╫╕▓└╗ ║Ω╢≤┐∞└·░í
  223.           ┐Σ├╗╟╥╢º ├ú└╗ ╝÷ ╛°┤┘. ┐╣╕ª ╡Θ╛ε, ┐▄║╬ ╕«┤┘└╠╖║╝╟└╗
  224.           ╗τ┐δ╟╧┴÷ ╛╩└╗╢º <code>/~quux/foo/index.html</code>┐í╝¡
  225.           <code>image.gif</code>╕ª ┐Σ├╗╟╧╕Θ
  226.           <code>/~quux/image.gif</code>╕ª ┐Σ├╗╟╧░╘ ╡╚┤┘!</p>
  227.  
  228.           <p>▒╫╖í╝¡ └╠╕ª ╟╪░ß╟╧▒Γ└º╟╪ ┤┘└╜░· ░░└╠ ╝│┴ñ╟╤┤┘:</p>
  229.  
  230. <div class="example"><pre>
  231. RewriteEngine  on
  232. RewriteBase    /~quux/
  233. RewriteRule    ^foo<strong>$</strong>  foo<strong>/</strong>  [<strong>R</strong>]
  234. </pre></div>
  235.  
  236.           <p>╚¿╡≡╖║┼Σ╕«└╟ ├╓╗≤└º <code>.htaccess</code> ╞─└╧┐í
  237.           ┤┘└╜░· ░░└╠ ╝│┴ñ╟╥ ╝÷╡╡ └╓┤┘. ▒╫╖»│¬ ├│╕«╟╧┤┬╡Ñ ║╬┤π└╠
  238.           ╡╚┤┘.</p>
  239.  
  240. <div class="example"><pre>
  241. RewriteEngine  on
  242. RewriteBase    /~quux/
  243. RewriteCond    %{REQUEST_FILENAME}  <strong>-d</strong>
  244. RewriteRule    ^(.+<strong>[^/]</strong>)$           $1<strong>/</strong>  [R]
  245. </pre></div>
  246.         </dd>
  247.       </dl>
  248.  
  249.     
  250.  
  251.     <h3>└╧░ⁿ╡╚ URL ▒╕┴╢╖╬ ╕╕╡τ └Ñ┼¼╖»╜║┼═</h3>
  252.  
  253.       
  254.  
  255.       <dl>
  256.         <dt>╗≤╚▓╝│╕φ:</dt>
  257.  
  258.         <dd>
  259.           <p>└╬╞«╢≤│▌ └Ñ╝¡╣÷▒║└╟ ╕≡╡τ └Ñ╝¡╣÷┐í ╡┐└╧╟╧░φ └╧░ⁿ╡╚
  260.           URL ▒╕┴╢╕ª ╕╕╡Θ░φ ╜═┤┘. ┴∩, ╕≡╡τ (┴ñ└╟╗≤ ╝¡╣÷┐í ╝╙╟╧┐⌐
  261.           ╝¡╣÷┐í └╟┴╕└√└╬!) URL└╗ ╝¡╣÷ <em>╡╢╕│└√└╕╖╬</em> ╕╕╡τ┤┘!
  262.           └Ñ └╠╕º░°░ú┐í ╝¡╣÷╡╢╕│└√└╬ ╡┐└╧╟╤ ▒╕┴╢╕ª ║╬┐⌐╟╪╛▀ ╟╤┤┘:
  263.           URL└║ ╜╟┴ª ╝¡╣÷╕ª ┴÷─¬╟╧╕Θ ╛╚╡╚┤┘. ╝¡╣÷▒║└╠ └┌╡┐└╕╖╬
  264.           ╜╟┴ª ╝¡╣÷╖╬ └»╡╡╟╤┤┘.</p>
  265.         </dd>
  266.  
  267.         <dt>╟╪░ß├Ñ:</dt>
  268.  
  269.         <dd>
  270.           <p>╕╒└· ╗τ┐δ└┌, ▒╫╖∞, ╡╢╕│├╝└╟ └º─í ┴ñ║╕╕ª └·└σ╟╤
  271.           (║╨╗Ω╡╚) ┐▄║╬╕╩┐í ╜╟┴ª ╝¡╣÷ ┴ñ║╕╕ª ╛≥╛ε┐┬┤┘. ┐▄║╬╕╩└║
  272.           ┤┘└╜░· ░░└║ ╟ⁿ╜─└╠┤┘</p>
  273.  
  274. <div class="example"><pre>
  275. user1  server_of_user1
  276. user2  server_of_user2
  277. :      :
  278. </pre></div>
  279.  
  280.           <p>┐∞╕«┤┬ └╠ ┴ñ║╕╕ª ░ó░ó <code>map.xxx-to-host</code>
  281.           ╞─└╧┐í └·└σ╟▀┤┘. ┤┘└╜└╕╖╬ ╕≡╡τ ╝¡╣÷┐í╝¡ URL└╠ ╝¡╣÷┐í
  282.           ╛°┤┘╕Θ ┤┘└╜░· ░░└║ URL└╗,</p>
  283.  
  284. <div class="example"><pre>
  285. /u/user/anypath
  286. /g/group/anypath
  287. /e/entity/anypath
  288. </pre></div>
  289.  
  290.           <p>┤┘└╜░· ░░└╠ ╕«┤┘└╠╖║╝╟╟╤┤┘</p>
  291.  
  292. <div class="example"><pre>
  293. http://physical-host/u/user/anypath
  294. http://physical-host/g/group/anypath
  295. http://physical-host/e/entity/anypath
  296. </pre></div>
  297.  
  298.           <p>╛╞╖í ▒╘─ó└║ ╕╩╞─└╧└╗ ╗τ┐δ╟╧┐⌐ └╠ └█╛≈└╗ ╟╤┤┘ (server0└║
  299.           ╕╩┐í ╟╫╕±└╠ ╛°┤┬ ░µ┐∞ ╗τ┐δ╟╥ ▒Γ║╗╝¡╣÷╢≤░φ ░í┴ñ╟╤┤┘):</p>
  300.  
  301. <div class="example"><pre>
  302. RewriteEngine on
  303.  
  304. RewriteMap      user-to-host   txt:/path/to/map.user-to-host
  305. RewriteMap     group-to-host   txt:/path/to/map.group-to-host
  306. RewriteMap    entity-to-host   txt:/path/to/map.entity-to-host
  307.  
  308. RewriteRule   ^/u/<strong>([^/]+)</strong>/?(.*)   http://<strong>${user-to-host:$1|server0}</strong>/u/$1/$2
  309. RewriteRule   ^/g/<strong>([^/]+)</strong>/?(.*)  http://<strong>${group-to-host:$1|server0}</strong>/g/$1/$2
  310. RewriteRule   ^/e/<strong>([^/]+)</strong>/?(.*) http://<strong>${entity-to-host:$1|server0}</strong>/e/$1/$2
  311.  
  312. RewriteRule   ^/([uge])/([^/]+)/?$          /$1/$2/.www/
  313. RewriteRule   ^/([uge])/([^/]+)/([^.]+.+)   /$1/$2/.www/$3\
  314. </pre></div>
  315.         </dd>
  316.       </dl>
  317.  
  318.     
  319.  
  320.     <h3>╚¿╡≡╖║┼Σ╕«╕ª ┤┘╕Ñ └Ñ╝¡╣÷╖╬ └╠└ⁿ</h3>
  321.  
  322.       
  323.  
  324.       <dl>
  325.         <dt>╗≤╚▓╝│╕φ:</dt>
  326.  
  327.         <dd>
  328.           <p>╕╣└║ └Ñ░ⁿ╕«└┌┤┬ └Ñ╝¡╣÷└╟ ╕≡╡τ ╚¿╡≡╖║┼Σ╕«╕ª ┤┘╕Ñ
  329.           └Ñ╝¡╣÷╖╬ └╠└ⁿ╟╤ ░µ┐∞ ╟╪░ß├Ñ└╗ ╣░╛ε║╗┤┘. └╠ ╣µ╣²└║
  330.           └╠└ⁿ ╝¡╣÷╕ª ┤δ├╝╟╥ ╗⌡╖╬┐ε ╝¡╣÷╕ª ▒╕╝║╟╧┤┬╡Ñ ╜├░ú└╠
  331.           ░╔╕«┤┬ ░µ┐∞┐í ╟╩┐Σ╟╧┤┘.</p>
  332.         </dd>
  333.  
  334.         <dt>╟╪░ß├Ñ:</dt>
  335.  
  336.         <dd>
  337.           <p><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧╕Θ ░ú┤▄╟╧┤┘.
  338.           └╠└ⁿ └Ñ╝¡╣÷┤┬ ╕≡╡τ <code>/~user/anypath</code> URL└╗
  339.           <code>http://newserver/~user/anypath</code>╖╬
  340.           ╕«┤┘└╠╖║╝╟╟╧╕Θ ╡╚┤┘.</p>
  341.  
  342. <div class="example"><pre>
  343. RewriteEngine on
  344. RewriteRule   ^/~(.+)  http://<strong>newserver</strong>/~$1  [R,L]
  345. </pre></div>
  346.         </dd>
  347.       </dl>
  348.  
  349.     
  350.  
  351.     <h3>╚¿╡≡╖║┼Σ╕« ▒╕┴╢ ╕╕╡Θ▒Γ</h3>
  352.  
  353.       
  354.  
  355.       <dl>
  356.         <dt>╗≤╚▓╝│╕φ:</dt>
  357.  
  358.         <dd>
  359.           <p>╗τ┐δ└┌░í ╝÷├╡╕φ└╬ ╗τ└╠╞«┤┬ ║╕┼δ ╚¿╡≡╖║┼Σ╕« ▒╕┴╢╕ª
  360.           ╕╕╡τ┤┘. ┴∩, ┐╣╕ª ╡Θ╛ε └╠╕º└╠ ╗τ┐δ└┌╕φ└╟ ├╣╣°┬░ ╣«└┌└╬
  361.           ╟╧└º╡≡╖║┼Σ╕«┐í ╚¿╡≡╖║┼Σ╕«╕ª ╡╨┤┘. ▒╫╖í╝¡,
  362.           <code>/~foo/anypath</code>┤┬
  363.           <code>/home/<strong>f</strong>/foo/.www/anypath</code>└╠░φ,
  364.           <code>/~bar/anypath</code>┤┬
  365.           <code>/home/<strong>b</strong>/bar/.www/anypath</code>└╠┤┘.</p>
  366.         </dd>
  367.  
  368.         <dt>╟╪░ß├Ñ:</dt>
  369.  
  370.         <dd>
  371.           <p>╣░░ß╟Ñ╜├░í └╓┤┬ URL└╗ └º┐═ ░░└║ ▒╕┴╢╖╬ ║»╚»╟╧▒Γ└º╟╪
  372.           ┤┘└╜ ▒╘─ó└╗ ╗τ┐δ╟╤┤┘.</p>
  373.  
  374. <div class="example"><pre>
  375. RewriteEngine on
  376. RewriteRule   ^/~(<strong>([a-z])</strong>[a-z0-9]+)(.*)  /home/<strong>$2</strong>/$1/.www$3
  377. </pre></div>
  378.         </dd>
  379.       </dl>
  380.  
  381.     
  382.  
  383.     <h3>╞─└╧╜├╜║┼█ └τ▒╕╝║</h3>
  384.  
  385.       
  386.  
  387.       <dl>
  388.         <dt>╗≤╚▓╝│╕φ:</dt>
  389.  
  390.         <dd>
  391.           <p>└╠ ┐╣┤┬ ╜╟╖╬ ╟╧╡σ─┌╛ε└√└╠┤┘: ╡≡╖║┼Σ╕«║░
  392.           <code>RewriteRules</code>╕ª ╕┼┐∞ ╕╣└╠ ╗τ┐δ╟╧┐⌐ └┌╖ß
  393.           └┌├╝┤┬ ▒╫┤δ╖╬ ╡╨├╝╖╬ └Ñ┐í └┌╖ß╕ª └┌┐¼╜║╖┤░╘ ║Ω╢≤┐∞┬í╟╧╡╡╖╧
  394.           ╟╤┤┘. ╣Φ░µ: │¬┤┬ 1992│Γ ║╬┼═ └┌└»╖╙░╘ ╗τ┐δ╟╥ ╝÷ └╓┤┬
  395.           └»┤╨╜║ ╝╥╟┴╞«┐■╛ε╡Θ└╗ <strong><em>net.sw</em></strong>┐í
  396.           ╕≡╛╞╡╬░φ └╓╛·┤┘. └╠┤┬ │╗░í ──╟╗┼═░·╟╨└╗ ░°║╬╟╧╕Θ╝¡
  397.           ┐⌐╖»╟╪╡┐╛╚ ┐⌐░í╜├░ú┐í ╜├╜║┼█ ░ⁿ╕«└┌┐═ │╫╞«┐≈ ░ⁿ╕«└┌╕ª
  398.           ╟╪┐╘▒Γ╢º╣«┐í │╗ ├δ╣╠└╠└┌ └╧└╠┤┘. ╕┼┴╓╕╢┤┘ ╗⌡╖╬ ╝╥╟┴╞«┐■╛ε░í
  399.           ├▀░í╡╔ ╢º╕╢┤┘ ╡≡╖║┼Σ╕«╕ª ▒φ░╘ ╕╕╡Θ╛ε┐╘┤┘:</p>
  400.  
  401. <div class="example"><pre>
  402. drwxrwxr-x   2 netsw  users    512 Aug  3 18:39 Audio/
  403. drwxrwxr-x   2 netsw  users    512 Jul  9 14:37 Benchmark/
  404. drwxrwxr-x  12 netsw  users    512 Jul  9 00:34 Crypto/
  405. drwxrwxr-x   5 netsw  users    512 Jul  9 00:41 Database/
  406. drwxrwxr-x   4 netsw  users    512 Jul 30 19:25 Dicts/
  407. drwxrwxr-x  10 netsw  users    512 Jul  9 01:54 Graphic/
  408. drwxrwxr-x   5 netsw  users    512 Jul  9 01:58 Hackers/
  409. drwxrwxr-x   8 netsw  users    512 Jul  9 03:19 InfoSys/
  410. drwxrwxr-x   3 netsw  users    512 Jul  9 03:21 Math/
  411. drwxrwxr-x   3 netsw  users    512 Jul  9 03:24 Misc/
  412. drwxrwxr-x   9 netsw  users    512 Aug  1 16:33 Network/
  413. drwxrwxr-x   2 netsw  users    512 Jul  9 05:53 Office/
  414. drwxrwxr-x   7 netsw  users    512 Jul  9 09:24 SoftEng/
  415. drwxrwxr-x   7 netsw  users    512 Jul  9 12:17 System/
  416. drwxrwxr-x  12 netsw  users    512 Aug  3 20:15 Typesetting/
  417. drwxrwxr-x  10 netsw  users    512 Jul  9 14:08 X11/
  418. </pre></div>
  419.  
  420.           <p>1996│Γ 7┐∙ └╠ └·└σ╝╥╕ª ╕┌└╓┤┬ └Ñ └╬┼═╞Σ└╠╜║╕ª ┼δ╟╪
  421.           ╝╝╗≤┐í ░°░│╟╧▒Γ╖╬ ░ß┴ñ╟▐┤┘. "╕┌└╓┤┘"┤┬ ╕╗└║, ├╓╗≤└º
  422.           ╡≡╖║┼Σ╕«┐í CGI ╜║┼⌐╕│╞«╕ª ╡╬┴÷ ╛╩░φ╡╡, └·└σ╝╥ ░Φ├■▒╕┴╢╕ª
  423.           ┴≈┴ó ║Ω╢≤┐∞┴·╟╧▒µ ╣┘╢⌡┤┘┤┬ ╢µ└╠┤┘. ┐╓? └·└σ╝╥╕ª │¬┴▀┐í
  424.           FTP╖╬╡╡ ┴ó▒┘╟╥ ╝÷ └╓╡╡╖╧ ╕╕╡Θ ┐╣┴ñ└╠┐┤▒Γ╢º╣«┐í └Ñ└╠│¬
  425.           CGI┐═ ░ⁿ╖├╡╚ │╗┐δ└╗ ░░└╠ ╡╬▒Γ ╜╚╛·┤┘.</p>
  426.         </dd>
  427.  
  428.         <dt>╟╪░ß├Ñ:</dt>
  429.  
  430.         <dd>
  431.           <p>╟╪░ß├Ñ└║ ╡╬ ║╬║╨└╕╖╬ │¬┤╢┤┘: ╕╒└· ╡≡╖║┼Σ╕« ╝÷┴╪┐í╝¡
  432.           ╟╩┐Σ╟╤ ╕≡╡τ ╞Σ└╠┴÷╕ª ╡┐└√└╕╖╬ ╕╕╡σ┤┬ CGI ╜║┼⌐╕│╞«░í
  433.           ╟╩┐Σ╟╧┤┘. │¬┤┬ └╠ ╜║┼⌐╕│╞«╡Θ└╗ ┤┘└╜░· ░░└╠
  434.           <code>/e/netsw/.www/</code>┐í ╡╬╛·┤┘:</p>
  435.  
  436. <div class="example"><pre>
  437. -rw-r--r--   1 netsw  users    1318 Aug  1 18:10 .wwwacl
  438. drwxr-xr-x  18 netsw  users     512 Aug  5 15:51 DATA/
  439. -rw-rw-rw-   1 netsw  users  372982 Aug  5 16:35 LOGFILE
  440. -rw-r--r--   1 netsw  users     659 Aug  4 09:27 TODO
  441. -rw-r--r--   1 netsw  users    5697 Aug  1 18:01 netsw-about.html
  442. -rwxr-xr-x   1 netsw  users     579 Aug  2 10:33 netsw-access.pl
  443. -rwxr-xr-x   1 netsw  users    1532 Aug  1 17:35 netsw-changes.cgi
  444. -rwxr-xr-x   1 netsw  users    2866 Aug  5 14:49 netsw-home.cgi
  445. drwxr-xr-x   2 netsw  users     512 Jul  8 23:47 netsw-img/
  446. -rwxr-xr-x   1 netsw  users   24050 Aug  5 15:49 netsw-lsdir.cgi
  447. -rwxr-xr-x   1 netsw  users    1589 Aug  3 18:43 netsw-search.cgi
  448. -rwxr-xr-x   1 netsw  users    1885 Aug  1 17:41 netsw-tree.cgi
  449. -rw-r--r--   1 netsw  users     234 Jul 30 16:35 netsw-unlimit.lst
  450. </pre></div>
  451.  
  452.           <p><code>DATA/</code> ╟╧└º╡≡╖║┼Σ╕«┐í └º┐í╝¡ ╕╗╟╤ └·└σ╝╥░í
  453.           └╓┤┘. ╜╟┴ª <strong><em>net.sw</em></strong>└╟ │╗┐δ└║ ║╕┼δ
  454.           <code>rdist</code>╕ª ╗τ┐δ╟╧┐⌐ └┌╡┐└╕╖╬ ░í┴«┐┬┤┘. ╡╬╣°┬░
  455.           ║╬║╨└╠ │▓╛╥┤┘: ╛ε╢╗░╘ └╠ ╡╬ ▒╕┴╢╕ª ╟╧│¬└╟ └┌┐¼╜║╖»┐ε
  456.           URL ▒╕┴╢╖╬ ┐¼░ß╟╧┤┬░í? ╗τ┐δ└┌┐í░╘ <code>DATA/</code>
  457.           ╡≡╖║┼Σ╕«╕ª ░¿├▀░φ, URL╕╢┤┘ └√└²╟╤ CGI ╜║┼⌐╕│╞«╕ª ╜╟╟α╟╧░φ
  458.           ╜═┤┘. ╟╪░ß├Ñ└║ ┤┘└╜░· ░░┤┘: ╕╒└· ╝¡╣÷└╟ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>┐í╝¡ ░°░│╡╚
  459.           URL <code>/net.sw/</code>╕ª │╗║╬ ░µ╖╬ <code>/e/netsw</code>╖╬
  460.           └τ└█╝║╟╧▒Γ└º╟╪ ╡≡╖║┼Σ╕«║░ ╝│┴ñ╞─└╧┐í ┤┘└╜░· ░░└╠ ╝│┴ñ╟╤┤┘:</p>
  461.  
  462. <div class="example"><pre>
  463. RewriteRule  ^net.sw$       net.sw/        [R]
  464. RewriteRule  ^net.sw/(.*)$  e/netsw/$1
  465. </pre></div>
  466.  
  467.           <p>├╣╣°┬░ ▒╘─ó└║ ╕╢┴÷╕╖┐í ╜╜╖í╜¼░í ╛°┤┬ ┐Σ├╗└╗ └º╟╪╝¡
  468.           ╗τ┐δ╟▀┤┘! ╡╬╣°┬░ ▒╘─ó└╠ ╜╟┴ª └█╛≈└╗ ╟╤┤┘. ▒╫╕«░φ ╡≡╖║┼Σ╕«║░
  469.           ╝│┴ñ╞─└╧ <code>/e/netsw/.www/.wwwacl</code>┐í ░ß┴ñ└√└╬
  470.           ╝│┴ñ└╠ │¬┐┬┤┘:</p>
  471.  
  472. <div class="example"><pre>
  473. Options       ExecCGI FollowSymLinks Includes MultiViews
  474.  
  475. RewriteEngine on
  476.  
  477. #  ╛╒ ║╬║╨└╠ /net.sw/ ╖╬ ┴ó▒┘╟╤┤┘
  478. RewriteBase   /net.sw/
  479.  
  480. #  ╕╒└· ├╓╗≤└º ╡≡╖║┼Σ╕«╕ª
  481. #  cgi ╜║┼⌐╕│╞«╖╬ └τ└█╝║╟╤┤┘
  482. RewriteRule   ^$                       netsw-home.cgi     [L]
  483. RewriteRule   ^index\.html$            netsw-home.cgi     [L]
  484.  
  485. #  ║Ω╢≤┐∞└·░í ╡≡╖║┼Σ╕«║░ ╞Σ└╠┴÷╕ª ┐Σ├╗╟╤ ░µ┐∞
  486. #  ╟╧└º╡≡╖║┼Σ╕«╕ª ├▀├Γ╟╤┤┘
  487. RewriteRule   ^.+/(netsw-[^/]+/.+)$    $1                 [L]
  488.  
  489. #  └╠┴ª └τ└█╝║└╗ ╕╢─ú┤┘
  490. RewriteRule   ^netsw-home\.cgi.*       -                  [L]
  491. RewriteRule   ^netsw-changes\.cgi.*    -                  [L]
  492. RewriteRule   ^netsw-search\.cgi.*     -                  [L]
  493. RewriteRule   ^netsw-tree\.cgi$        -                  [L]
  494. RewriteRule   ^netsw-about\.html$      -                  [L]
  495. RewriteRule   ^netsw-img/.*$           -                  [L]
  496.  
  497. #  ┤┘╕Ñ cgi ╜║┼⌐╕│╞«░í ├│╕«╟╥
  498. #  ╟╧└º╡≡╖║┼Σ╕«░í │▓╛╥┤┘
  499. RewriteRule   !^netsw-lsdir\.cgi.*     -                  [C]
  500. RewriteRule   (.*)                     netsw-lsdir.cgi/$1
  501. </pre></div>
  502.  
  503.           <p>╟╪╝«└╗ └º╟╤ ╚∙╞«:</p>
  504.  
  505.           <ol>
  506.             <li>│╫╣°┬░ ║╬║╨┐í╝¡ ┤δ├╝ ╟╩╡σ('<code>-</code>')░í
  507.             ╛°░φ <code>L</code> (last) ╟├╖í▒╫░í └╓└╜└╗ ┴╓╕±╟╧╢≤</li>
  508.  
  509.             <li>╕╢┴÷╕╖ ║╬║╨┐í╝¡ ├╣╣°┬░ ▒╘─ó┐í <code>!</code>
  510.             (not) ╣«└┌┐═ <code>C</code> (chain) ╟├╖í▒╫╕ª ┴╓╕±╟╧╢≤</li>
  511.  
  512.             <li>╕╢┴÷╕╖ ▒╘─ó┐í╝¡ ▒Γ┼╕ ╟╪┤τ╟╧┴÷ ╛╩┤┬ ╕≡╡τ ░µ┐∞╕ª
  513.             └Γ╛╞│╗┤┬ ╞╨┼╧└╗ ┴╓╕±╟╧╢≤</li>
  514.           </ol>
  515.         </dd>
  516.       </dl>
  517.  
  518.     
  519.  
  520.     <h3>NCSA imagemap└╗ ╛╞╞──í <code>mod_imap</code>└╕╖╬</h3>
  521.  
  522.       
  523.  
  524.       <dl>
  525.         <dt>╗≤╚▓╝│╕φ:</dt>
  526.  
  527.         <dd>
  528.           <p>╗τ╢≈╡Θ└║ NCSA └Ñ╝¡╣÷┐í╝¡ ╟÷┤δ└√└╬ ╛╞╞──í └Ñ╝¡╣÷╖╬
  529.           └┌┐¼╜║╖┤░╘ ┐┼░▄░í▒µ ╣┘╢⌡┤┘. ▒╫╖í╝¡ ┐└╖í╡╚ NCSA
  530.           <code>imagemap</code> ╟┴╖╬▒╫╖Ñ└╗ ╗τ┐δ╟╤ ╞Σ└╠┴÷╕ª ╟÷┤δ└√└╬
  531.           ╛╞╞──í <code class="module"><a href="../mod/mod_imap.html">mod_imap</a></code>╖╬ ├│╕«╟╧▒µ ╣┘╢⌡┤┘.
  532.           ╣«┴ª┤┬ <code>imagemap</code> ╟┴╖╬▒╫╖Ñ└╗
  533.           <code>/cgi-bin/imagemap/path/to/page.map</code>░·
  534.           ░░└╠ ┬ⁿ┴╢╟╧┤┬ ╟╧└╠╞█╕╡┼⌐░í ╕╣┤┘┤┬ ░═└╠┤┘. ╛╞╞──í┤┬
  535.           <code>/path/to/page.map</code>░· ░░└║ ┐Σ├╗└╗ ╣▐╛╞╛▀
  536.           ╟╤┤┘.</p>
  537.         </dd>
  538.  
  539.         <dt>╟╪░ß├Ñ:</dt>
  540.  
  541.         <dd>
  542.           <p>╕≡╡τ ┐Σ├╗┐í╝¡ ╛╒║╬║╨└╗ ╡┐└√└╕╖╬ ┴ª░┼╟╧┤┬ └ⁿ┐¬ ▒╘─ó└╗
  543.           ╗τ┐δ╟╤┤┘:</p>
  544.  
  545. <div class="example"><pre>
  546. RewriteEngine  on
  547. RewriteRule    ^/cgi-bin/imagemap(.*)  $1  [PT]
  548. </pre></div>
  549.         </dd>
  550.       </dl>
  551.  
  552.     
  553.  
  554.     <h3>┐⌐╖» ╡≡╖║┼Σ╕«┐í╝¡ ╞Σ└╠┴÷ ░╦╗÷</h3>
  555.  
  556.       
  557.  
  558.       <dl>
  559.         <dt>╗≤╚▓╝│╕φ:</dt>
  560.  
  561.         <dd>
  562.           <p>░í▓√ └Ñ╝¡╣÷░í ┐⌐╖» ╡≡╖║┼Σ╕«┐í╝¡ ╞─└╧└╗ ├ú╛╞╛▀ ╟╥
  563.           ╢º░í └╓┤┘. └╠ ░µ┐∞ MultiViews│¬ ┤┘╕Ñ ╣µ╣²└║ ╡╡┐≥└╠
  564.           ╛╚╡╚┤┘.</p>
  565.         </dd>
  566.  
  567.         <dt>╟╪░ß├Ñ:</dt>
  568.  
  569.         <dd>
  570.           <p>┐⌐╖» ╡≡╖║┼Σ╕«┐í╝¡ ╞─└╧└╗ ├ú┤┬ ▒╘─ó└╗ ┴≈┴ó ╟┴╖╬▒╫╖Ñ╟╤┤┘.</p>
  571.  
  572. <div class="example"><pre>
  573. RewriteEngine on
  574.  
  575. #   ╕╒└· custom/┐í╝¡ ├ú▒µ ╜├╡╡╟╧░φ...
  576. #   ...├ú└╕╕Θ │í!
  577. RewriteCond         /your/docroot/<strong>dir1</strong>/%{REQUEST_FILENAME}  -f
  578. RewriteRule  ^(.+)  /your/docroot/<strong>dir1</strong>/$1  [L]
  579.  
  580. #   ╡╬╣°┬░╖╬ pub/┐í╝¡ ├ú▒µ ╜├╡╡╟╤┤┘...
  581. #   ...├ú└╕╕Θ │í!
  582. RewriteCond         /your/docroot/<strong>dir2</strong>/%{REQUEST_FILENAME}  -f
  583. RewriteRule  ^(.+)  /your/docroot/<strong>dir2</strong>/$1  [L]
  584.  
  585. #   ╕°├ú└╕╕Θ ┤┘╕Ñ Alias│¬ ScriptAlias ┴÷╜├╛ε ╡ε└╕╖╬ ┴°╟α╟╤┤┘.
  586. RewriteRule   ^(.+)  -  [PT]
  587. </pre></div>
  588.         </dd>
  589.       </dl>
  590.  
  591.     
  592.  
  593.     <h3>URL┐í ╡√╢≤ ╚»░µ║»╝÷╕ª ╝│┴ñ╟╤┤┘</h3>
  594.  
  595.       
  596.  
  597.       <dl>
  598.         <dt>╗≤╚▓╝│╕φ:</dt>
  599.  
  600.         <dd>
  601.           <p>┐Σ├╗╡Θ░ú┐í ╗≤┼┬┴ñ║╕╕ª └»┴÷╟╧▒Γ└º╟╪ URL┐í ┴ñ║╕╕ª
  602.           └╬─┌╡∙╟╧┤┬ ╣µ╣²╡╡ └╓┤┘. ▒╫╖»│¬ ┤▄┴÷ └╠ ┴ñ║╕╕ª ┴ª░┼╟╧▒Γ└º╟╪
  603.           ╕≡╡τ ╞Σ└╠┴÷┐í CGI wrapper╕ª ╗τ┐δ╟╧░φ ╜═┴÷ ╛╩┤┘.</p>
  604.         </dd>
  605.  
  606.         <dt>╟╪░ß├Ñ:</dt>
  607.  
  608.         <dd>
  609.           <p>└τ└█╝║ ▒╘─ó└╗ ╗τ┐δ╟╧┐⌐ ╗≤┼┬┴ñ║╕╕ª ├▀├Γ╟╧░φ, ├▀├Γ╟╤
  610.           ┴ñ║╕╕ª │¬┴▀┐í XSSI│¬ CGI┐í╝¡ ╗τ┐δ╟╧▒Γ└º╟╪ ╚»░µ║»╝÷┐í
  611.           └·└σ╟╤┤┘. ▒╫╖í╝¡ URL <code>/foo/S=java/bar/</code>┤┬
  612.           <code>/foo/bar/</code>╖╬ ║»╚»╡╟░φ <code>STATUS</code>╢≤┤┬
  613.           ╚»░µ║»╝÷ ░¬└╗ "java"╖╬ ╝│┴ñ╟╤┤┘.</p>
  614.  
  615. <div class="example"><pre>
  616. RewriteEngine on
  617. RewriteRule   ^(.*)/<strong>S=([^/]+)</strong>/(.*)    $1/$3 [E=<strong>STATUS:$2</strong>]
  618. </pre></div>
  619.         </dd>
  620.       </dl>
  621.  
  622.     
  623.  
  624.     <h3>░í╗≤ ╗τ┐δ└┌ ╚ú╜║╞«</h3>
  625.  
  626.       
  627.  
  628.       <dl>
  629.         <dt>╗≤╚▓╝│╕φ:</dt>
  630.  
  631.         <dd>
  632.           <p>░í╗≤╚ú╜║╞«╕ª ╗τ┐δ╟╧┴÷ ╛╩░φ ░░└║ ──╟╗┼═╖╬ DNS A
  633.           ╖╣─┌╡σ╕ª ╝│┴ñ╟╧┐⌐
  634.           <code>www.<strong>username</strong>.host.domain.com</code>└╗
  635.           ╗τ┐δ└┌└╟ ╚¿╞Σ└╠┴÷╖╬ ┴ª░°╟╧░φ ╜═┤┘.</p>
  636.         </dd>
  637.  
  638.         <dt>╟╪░ß├Ñ:</dt>
  639.  
  640.         <dd>
  641.           <p>HTTP/1.0 ┐Σ├╗└╟ ░µ┐∞ ╣µ╣²└╠ ╛°┴÷╕╕, Host: HTTP
  642.           ╟∞┤⌡╕ª ╞≈╟╘╟╤ HTTP/1.1 ┐Σ├╗└║ ┤┘└╜ ▒╘─ó└╗ ╗τ┐δ╟╧┐⌐
  643.           │╗║╬└√└╕╖╬ <code>http://www.username.host.com/anypath</code>╕ª
  644.           <code>/home/username/anypath</code>╖╬ └τ└█╝║╟╥ ╝÷
  645.           └╓┤┘:</p>
  646.  
  647. <div class="example"><pre>
  648. RewriteEngine on
  649. RewriteCond   %{<strong>HTTP_HOST</strong>}                 ^www\.<strong>[^.]+</strong>\.host\.com$
  650. RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
  651. RewriteRule   ^www\.<strong>([^.]+)</strong>\.host\.com(.*) /home/<strong>$1</strong>$2
  652. </pre></div>
  653.         </dd>
  654.       </dl>
  655.  
  656.     
  657.  
  658.     <h3>╚¿╡≡╖║┼Σ╕«╕ª ┐▄║╬ ╝¡╣÷╖╬ ╕«┤┘└╠╖║╝╟</h3>
  659.  
  660.       
  661.  
  662.       <dl>
  663.         <dt>╗≤╚▓╝│╕φ:</dt>
  664.  
  665.         <dd>
  666.           <p>┴÷┐¬ ╡╡╕▐└╬ <code>ourdomain.com</code> ╣█┐í╝¡ ┐Σ├╗└╠
  667.           ╡Θ╛ε┐└╕Θ ╚¿╡≡╖║┼Σ╕« URL└╗ ┤┘╕Ñ └Ñ╝¡╣÷
  668.           <code>www.somewhere.com</code>└╕╖╬ ╕«┤┘╕«╖║╝╟╟╧▒µ
  669.           ╣┘╢⌡┤┘. ┴╛┴╛ ░í╗≤╚ú╜║╞« ╗τ┐δ└σ╝╥┐í╝¡ ╗τ┐δ╟╤┤┘.</p>
  670.         </dd>
  671.  
  672.         <dt>╟╪░ß├Ñ:</dt>
  673.  
  674.         <dd>
  675.           <p>└τ└█╝║ ┴╢░╟└╗ ╗τ┐δ╟╧╕Θ ╡╚┤┘:</p>
  676.  
  677. <div class="example"><pre>
  678. RewriteEngine on
  679. RewriteCond   %{REMOTE_HOST}  <strong>!^.+\.ourdomain\.com$</strong>
  680. RewriteRule   ^(/~.+)         http://www.somewhere.com/$1 [R,L]
  681. </pre></div>
  682.         </dd>
  683.       </dl>
  684.  
  685.     
  686.  
  687.     <h3>╜╟╞╨╟╤ URL└╗ ┤┘╕Ñ └Ñ╝¡╣÷╖╬ ╕«┤┘└╠╖║╝╟</h3>
  688.  
  689.       
  690.  
  691.       <dl>
  692.         <dt>╗≤╚▓╝│╕φ:</dt>
  693.  
  694.         <dd>
  695.           <p>URL └τ└█╝║┐í ┤δ╟╪╝¡ └Ñ╝¡╣÷ A┐í ╟╪┤τ ╞─└╧└╠ ╛°┤┬
  696.           ░µ┐∞ └Ñ╝¡╣÷ B╖╬ ┐Σ├╗└╗ ╕«┤┘└╠╖║╝╟╟╧┤┬ ╣µ╣²└╗ └┌┴╓
  697.           ╣░╛ε║╗┤┘. ║╕┼δ Perl╖╬ └█╝║╟╤ <code class="directive"><a href="../mod/core.html#errordocument">ErrorDocument</a></code> CGI ╜║┼⌐╕│╞«╕ª
  698.           ╗τ┐δ╟╧┴÷╕╕, <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧┤┬
  699.           ╣µ╣²╡╡ └╓┤┘. ▒╫╖»│¬ ╝║┤╔└║ <code class="directive"><a href="../mod/core.html#errordocument">ErrorDocument</a></code> CGI ╜║┼⌐╕│╞«║╕┤┘
  700.           ╢│╛ε┴ⁿ└╗ ╕φ╜╔╟╧╢≤!</p>
  701.         </dd>
  702.  
  703.         <dt>╟╪░ß├Ñ:</dt>
  704.  
  705.         <dd>
  706.           <p>├╣╣°┬░ ╣µ╣²└║ ║ⁿ╕ú┴÷╕╕ └»┐¼╝║└╠ ╢│╛ε┴÷░φ ┐╧└ⁿ╟╧┴÷
  707.           ╛╩┤┘:</p>
  708.  
  709. <div class="example"><pre>
  710. RewriteEngine on
  711. RewriteCond   /your/docroot/%{REQUEST_FILENAME} <strong>!-f</strong>
  712. RewriteRule   ^(.+)                             http://<strong>webserverB</strong>.dom/$1
  713. </pre></div>
  714.  
  715.           <p>└╠ ╣µ╣²└╟ ┤▄┴í└║ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> ╛╚┐í └╓┤┬ ╞Σ└╠┴÷╕╕
  716.           ░í┤╔╟╧┤┘┤┬ ┴í└╠┤┘. (┐╣╕ª ╡Θ╛ε ╚¿╡≡╖║┼Σ╕« ╡ε└╗ └º╟╪)
  717.           ┴╢░╟└╗ ├▀░í╟╥ ╝÷ └╓┴÷╕╕, ┤⌡ ┴┴└║ ╣µ╣²└╠ └╓┤┘:</p>
  718.  
  719. <div class="example"><pre>
  720. RewriteEngine on
  721. RewriteCond   %{REQUEST_URI} <strong>!-U</strong>
  722. RewriteRule   ^(.+)          http://<strong>webserverB</strong>.dom/$1
  723. </pre></div>
  724.  
  725.           <p><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>└╟ URL └ⁿ╣µ┬ⁿ┴╢(look-ahead)╕ª
  726.           ╗τ┐δ╟╤┤┘. ▒╫╖í╝¡ ╕≡╡τ URL┐í ╡┐└█╟╧░φ ╛╚└ⁿ╟╧┤┘. ▒╫╖»│¬
  727.           ╕≡╡τ ┐Σ├╗╕╢┤┘ │╗║╬ ╟╧└º┐Σ├╗└╗ ╟╤╣° ┤⌡ ╟╧▒Γ╢º╣«┐í └Ñ╝¡╣÷
  728.           ╝║┤╔┐í ╛╟┐╡╟Γ└╗ ┴╪┤┘. ▒╫╖í╝¡ ░¡╖┬╟╤ CPU┐í╝¡ └Ñ╝¡╣÷╕ª
  729.           ╜╟╟α╟╤┤┘╕Θ ╗τ┐δ╟╧╢≤. ──╟╗┼═░í ┤└╕«┤┘╕Θ ├╣╣°┬░ ╣µ╣²└╠│¬
  730.           ┤⌡ │¬└║ <code class="directive"><a href="../mod/core.html#errordocument">ErrorDocument</a></code>
  731.           CGI ╜║┼⌐╕│╞«╕ª ╗τ┐δ╟╧╢≤.</p>
  732.         </dd>
  733.       </dl>
  734.  
  735.     
  736.  
  737.     <h3>╚«└σ ╕«┤┘└╠╖║╝╟</h3>
  738.  
  739.       
  740.  
  741.       <dl>
  742.         <dt>╗≤╚▓╝│╕φ:</dt>
  743.  
  744.         <dd>
  745.           <p>░í▓√ ╕«┤┘└╠╖║╝╟╟╧┤┬ URL└╗ ┤⌡ ┴╢└²╟╥ ╟╩┐Σ░í └╓┤┘.
  746.           ╛╞╞──í │╗║╬ URL escape ╟╘╝÷┤┬ "<code>url#anchor</code>"
  747.           ░░└║ URL└╟ anchor╡╡ escape╟╤┤┘. ╛╞╞──í└╟
  748.           <code>uri_escape()</code> ╟╘╝÷┤┬ ┐∞╣░┴ñ└┌(#)╡╡ ░░└╠
  749.           escape╟╧╣╟╖╬ ╗τ┐δ╟╥ ╝÷ ╛°┤┘. ▒╫╖»╕Θ ╛ε╢╗░╘ └╠╖▒ URL╖╬
  750.           ╕«┤┘└╠╖║╝╟╟╥ ╝÷ └╓│¬?</p>
  751.         </dd>
  752.  
  753.         <dt>╟╪░ß├Ñ:</dt>
  754.  
  755.         <dd>
  756.           <p>┴≈┴ó ╕«┤┘└╠╖║╝╟╟╧┤┬ NPH-CGI ╜║┼⌐╕│╞«╕ª ╗τ┐δ╟╤ ╟╪░ß├Ñ└╠
  757.           ╟╩┐Σ╟╧┤┘. escape╕ª ╟╧┴÷ ╛╩▒Γ╢º╣«└╠┤┘ (NPH=non-parseable
  758.           headers). ╕╒└· ┤┘└╜ ╝¡╣÷╝│┴ñ└╗ ╟╧┐⌐ (└τ└█╝║ ▒╘─ó└╟
  759.           │í║╬║╨┐í ╗τ┐δ╟╪╛▀ ╟╤┤┘) ╗⌡╖╬┐ε URL scheme
  760.           <code>xredirect:</code>╕ª ╡╡└╘╟╤┤┘:</p>
  761.  
  762. <div class="example"><pre>
  763. RewriteRule ^xredirect:(.+) /path/to/nph-xredirect.cgi/$1 \
  764.             [T=application/x-httpd-cgi,L]
  765. </pre></div>
  766.  
  767.           <p>▒╫╖»╕Θ <code>xredirect:</code>╖╬ ╜├└█╟╧┤┬ ╕≡╡τ URL└║
  768.           <code>nph-xredirect.cgi</code> ╟┴╖╬▒╫╖Ñ└╗ ┼δ╟╧░╘ ╡╚┤┘.
  769.           ╟┴╖╬▒╫╖Ñ└║ ┤┘└╜░· ░░┤┘:</p>
  770.  
  771. <div class="example"><pre>
  772. #!/path/to/perl
  773. ##
  774. ##  nph-xredirect.cgi -- NPH/CGI script for extended redirects
  775. ##  Copyright (c) 1997 Ralf S. Engelschall, All Rights Reserved.
  776. ##
  777.  
  778. $| = 1;
  779. $url = $ENV{'PATH_INFO'};
  780.  
  781. print "HTTP/1.0 302 Moved Temporarily\n";
  782. print "Server: $ENV{'SERVER_SOFTWARE'}\n";
  783. print "Location: $url\n";
  784. print "Content-type: text/html\n";
  785. print "\n";
  786. print "<html>\n";
  787. print "<head>\n";
  788. print "<title>302 Moved Temporarily (EXTENDED)</title>\n";
  789. print "</head>\n";
  790. print "<body>\n";
  791. print "<h1>Moved Temporarily (EXTENDED)</h1>\n";
  792. print "The document has moved <a HREF=\"$url\">here</a>.<p>\n";
  793. print "</body>\n";
  794. print "</html>\n";
  795.  
  796. ##EOF##
  797. </pre></div>
  798.  
  799.           <p>▒╫╖»╕Θ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>░í ┴≈┴ó ╣▐┴÷╕°╟╧┤┬
  800.           ╕≡╡τ URL scheme└╕╖╬ ╕«┤┘└╠╖║╝╟╟╥ ╝÷ └╓┤┘. ┐╣╕ª ╡Θ╛ε,
  801.           ┤┘└╜░· ░░└╠ <code>news:newsgroup</code>└╕╖╬ ╕«┤┘└╠╖║╝╟╟╥
  802.           ╝÷ └╓┤┘</p>
  803.  
  804. <div class="example"><pre>
  805. RewriteRule ^anyurl  xredirect:news:newsgroup
  806. </pre></div>
  807.  
  808.           <div class="note">┴╓└╟: └º└╟ ╞»║░╟╤ "┼δ░·" ▒╘─ó└╗ ╗τ┐δ╟╧┐⌐
  809.           <code>xredirect:</code>╕ª ╕╢┴÷╕╖┐í ╚«└σ╟╪╛▀ ╟╧▒Γ╢º╣«┐í
  810.           ▒╘─ó┐í <code>[R]</code>└╠│¬ <code>[R,L]</code>└╗ ╗τ┐δ╟╧╕Θ
  811.           ╛╚╡╚┤┘.</div>
  812.         </dd>
  813.       </dl>
  814.  
  815.     
  816.  
  817.     <h3>└·└σ╝╥ ┴ó▒┘ ┴▀░Φ(multiplexer)</h3>
  818.  
  819.       
  820.  
  821.       <dl>
  822.         <dt>╗≤╚▓╝│╕φ:</dt>
  823.  
  824.         <dd>
  825.           <p><a href="http://www.perl.com/CPAN">http://www.perl.com/CPAN</a>┐í
  826.           └╓┤┬ ┤δ┤▄╟╤ CPAN (Comprehensive Perl Archive Network)└╗
  827.           ╛╞┤┬░í? └╠ ┴╓╝╥┤┬ ╝╝░Φ┐í ╚≡╛ε┴° ┐⌐╖» CPAN ╣╠╖» FTP
  828.           ╝¡╣÷┴▀ ┼¼╢≤└╠╛≡╞«┐í ░í▒ε└╠ └╓┤┬ ╝¡╣÷╖╬ ╕«┤┘└╠╖║╝╟╟╤┤┘.
  829.           └╠╕ª FTP ┴ó▒┘ ┴▀░Φ ╝¡║±╜║╢≤░φ ╟╤┤┘. CPAN└║ CGI ╜║┼⌐╕│╞«╕ª
  830.           ╗τ┐δ╟╧┴÷╕╕, <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧┐⌐
  831.           ║±╜┴╟╧░╘ ╕╕╡Θ ╝÷ └╓└╗▒ε?</p>
  832.         </dd>
  833.  
  834.         <dt>╟╪░ß├Ñ:</dt>
  835.  
  836.         <dd>
  837.           <p>╕╒└· <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> 3.0.0 ╣÷└ⁿ║╬┼═
  838.           ╕«┤┘└╠╖║╝╟┐í "<code>ftp:</code>" scheme└╗ ╗τ┐δ╟╥ ╝÷
  839.           └╓┤┘. ┤┘└╜└╕╖╬ ┼¼╢≤└╠╛≡╞«└╟ ├╓╗≤└º ╡╡╕▐└╬└╗ <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code>░· ░░└╠
  840.           ╗τ┐δ╟╧┐⌐ └º─í╕ª ├▀┴ñ╟╥ ╝÷ └╓┤┘. ║╣└Γ╚≈ ┐½└╬ ▒╘─ó┐í╝¡
  841.           ├╓╗≤└º ╡╡╕▐└╬└╗ ┴▀░Φ╕╩└╟ ┼░╖╬ ╗τ┐δ╟╤┤┘.</p>
  842.  
  843. <div class="example"><pre>
  844. RewriteEngine on
  845. RewriteMap    multiplex                txt:/path/to/map.cxan
  846. RewriteRule   ^/CxAN/(.*)              %{REMOTE_HOST}::$1                 [C]
  847. RewriteRule   ^.+\.<strong>([a-zA-Z]+)</strong>::(.*)$  ${multiplex:<strong>$1</strong>|ftp.default.dom}$2  [R,L]
  848. </pre></div>
  849.  
  850. <div class="example"><pre>
  851. ##
  852. ##  map.cxan -- Multiplexing Map for CxAN
  853. ##
  854.  
  855. de        ftp://ftp.cxan.de/CxAN/
  856. uk        ftp://ftp.cxan.uk/CxAN/
  857. com       ftp://ftp.cxan.com/CxAN/
  858.  :
  859. ##EOF##
  860. </pre></div>
  861.         </dd>
  862.       </dl>
  863.  
  864.     
  865.  
  866.     <h3>╜├░ú┐í ╡√╕Ñ └τ└█╝║</h3>
  867.  
  868.       
  869.  
  870.       <dl>
  871.         <dt>╗≤╚▓╝│╕φ:</dt>
  872.  
  873.         <dd>
  874.           <p>╜├░ú┐í ╡√╢≤ ┤┘╕Ñ │╗┐δ└╗ ╝¡║±╜║╟╧┤┬ ░µ┐∞ ╕╣└║ └Ñ░ⁿ╕«└┌┤┬
  875.           └ß╜├ ╞»║░╟╤ ╞Σ└╠┴÷╖╬ ╕«┤┘└╠╖║╝╟╟╧▒Γ└º╟╪ CGI ╜║┼⌐╕│╞«╕ª
  876.           ╗τ┐δ╟╤┤┘. <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╖╬┤┬ ╛ε╢╗░╘
  877.           ╟╥ ╝÷ └╓┤┬░í?</p>
  878.         </dd>
  879.  
  880.         <dt>╟╪░ß├Ñ:</dt>
  881.  
  882.         <dd>
  883.           <p>└τ└█╝║ ┴╢░╟┐í╝¡ ╗τ┐δ╟╥ ╝÷ └╓┤┬ ┐⌐╖» <code>TIME_xxx</code>
  884.           ║»╝÷░í └╓┤┘. ║»╝÷┐═ ╞»║░╟╤ ╗τ└ⁿ╝°╝¡ ║±▒│
  885.           <code><STRING</code>, <code>>STRING</code>,
  886.           <code>=STRING</code>└╗ ╗τ┐δ╟╧┐⌐ ╜├░ú┐í ╡√╢≤ ╕«┤┘└╠╖║╝╟╟╥
  887.           ╝÷ └╓┤┘:</p>
  888.  
  889. <div class="example"><pre>
  890. RewriteEngine on
  891. RewriteCond   %{TIME_HOUR}%{TIME_MIN} >0700
  892. RewriteCond   %{TIME_HOUR}%{TIME_MIN} <1900
  893. RewriteRule   ^foo\.html$             foo.day.html
  894. RewriteRule   ^foo\.html$             foo.night.html
  895. </pre></div>
  896.  
  897.           <p>URL <code>foo.html</code>└╗ ┐Σ├╗╟╧╕Θ
  898.           <code>07:00-19:00</code> ╡┐╛╚ <code>foo.day.html</code>
  899.           │╗┐δ└╗ ╝¡║±╜║╟╧░φ, │¬╕╙┴÷ ╜├░ú ╡┐╛╚
  900.           <code>foo.night.html</code> │╗┐δ└╗ ╝¡║±╜║╟╤┤┘. ╚¿╞Σ└╠┴÷┐í╝¡
  901.           ╗τ┐δ╟╧▒Γ ┴┴└║ ▒Γ┤╔└╠┤┘...</p>
  902.         </dd>
  903.       </dl>
  904.  
  905.     
  906.  
  907.     <h3>YYYY╕ª XXXX╖╬ └╠└ⁿ╟╤ ░µ┐∞ ┐¬╚ú╚»</h3>
  908.  
  909.       
  910.  
  911.       <dl>
  912.         <dt>╗≤╚▓╝│╕φ:</dt>
  913.  
  914.         <dd>
  915.           <p>┐⌐╖» <code>.html</code> ╞─└╧└╗ <code>.phtml</code>╖╬
  916.           ║»╚»╟╧┤┬ ╡ε <code>document.YYYY</code>╕ª
  917.           <code>document.XXXX</code>╖╬ └╠└ⁿ╟╤╚─ ┐¬╚ú╚»(backward
  918.           compatibility) URL└╗ (░í╗≤└√└╕╖╬ ┴╕└τ╟╧░╘) ╕╕╡Θ ╝÷
  919.           └╓│¬?</p>
  920.         </dd>
  921.  
  922.         <dt>╟╪░ß├Ñ:</dt>
  923.  
  924.         <dd>
  925.           <p>└╠╕º└╗ ▒Γ║╗└╠╕º└╕╖╬ └τ└█╝║╟╤╚─ ╗⌡╖╬┐ε ╚«└σ└┌╕ª
  926.           ░í┴° ╞─└╧└╠ └╓┤┬┴÷ ░╦╗τ╟╤┤┘. └╓┤┘╕Θ ▒╫ ╞─└╧╕φ└╗ ╗τ┐δ╟╧░φ,
  927.           ╛°└╕╕Θ URL└╗ ┐°╖í ╗≤┼┬╖╬ └τ└█╝║╟╤┤┘.</p>
  928.  
  929.  
  930. <div class="example"><pre>
  931. #   ╣«╝¡.html └╠ ╛°░φ
  932. #   ╣«╝¡.phtml ╕╕ └╓┤┬ ░µ┐∞
  933. #   ╣«╝¡.html └╗ ╣«╝¡.phtml ╖╬
  934. #   └τ└█╝║╟╧┤┬ ┐¬╚ú╚» ▒╘─ó
  935. RewriteEngine on
  936. RewriteBase   /~quux/
  937. #   ▒Γ║╗└╠╕º└╗ ├ú░φ, ├ú╛╥┤┘┤┬ ╗τ╜╟└╗ ▒Γ╛∩╟╤┤┘
  938. RewriteRule   ^(.*)\.html$              $1      [C,E=WasHTML:yes]
  939. #   ╞─└╧└╠ └╓┤┘╕Θ ╣«╝¡.phtml ╖╬ └τ└█╝║╟╤┤┘
  940. RewriteCond   %{REQUEST_FILENAME}.phtml -f
  941. RewriteRule   ^(.*)$ $1.phtml                   [S=1]
  942. #   ╛╞┤╧╕Θ ╛╒┐í╝¡ ├ú└║ ▒Γ║╗└╠╕º└╗ ╡╟╡╣╕░┤┘
  943. RewriteCond   %{ENV:WasHTML}            ^yes$
  944. RewriteRule   ^(.*)$ $1.html
  945. </pre></div>
  946.         </dd>
  947.       </dl>
  948.  
  949.     
  950.  
  951.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  952. <div class="section">
  953. <h2><a name="content" id="content">─┴┼┘├≈ ┤┘╖τ▒Γ</a></h2>
  954.  
  955.     
  956.  
  957.     <h3>╗⌡╖╬ └╠└ⁿ (░¿├▀▒Γ)</h3>
  958.  
  959.       
  960.  
  961.       <dl>
  962.         <dt>╗≤╚▓╝│╕φ:</dt>
  963.  
  964.         <dd>
  965.           <p>├╓▒┘ <code>foo.html</code>└╗ <code>bar.html</code>╖╬
  966.           ║»░µ╟╧░φ ┐¬╚ú╚»╝║└╗ └º╟╪ └╠└ⁿ URL└╗ ░Φ╝╙ ┴ª░°╟╧░φ
  967.           ╜═┤┘░φ ░í┴ñ╟╧└┌. ╗τ┐δ└┌┤┬ └╠└ⁿ URL└╠ ║»░µ╡╟╛·┤┘┤┬
  968.           ╗τ╜╟└╗ ┤½─í├ñ┴÷ ╕°╟╤┤┘.</p>
  969.         </dd>
  970.  
  971.         <dt>╟╪░ß├Ñ:</dt>
  972.  
  973.         <dd>
  974.           <p>┤┘└╜ ▒╘─ó└╕╖╬ └╠└ⁿ URL└╗ │╗║╬└√└╕╖╬ ╗⌡╖╬┐ε URL╖╬
  975.           └τ└█╝║╟╤┤┘:</p>
  976.  
  977. <div class="example"><pre>
  978. RewriteEngine  on
  979. RewriteBase    /~quux/
  980. RewriteRule    ^<strong>foo</strong>\.html$  <strong>bar</strong>.html
  981. </pre></div>
  982.         </dd>
  983.       </dl>
  984.  
  985.     
  986.  
  987.     <h3>╗⌡╖╬ └╠└ⁿ (╛╦╕«▒Γ)</h3>
  988.  
  989.       
  990.  
  991.       <dl>
  992.         <dt>╗≤╚▓╝│╕φ:</dt>
  993.  
  994.         <dd>
  995.           <p>┤┘╜├ <code>foo.html</code>└╗ <code>bar.html</code>╖╬
  996.           ║»░µ╟╧░φ ┐¬╚ú╚»╝║└╗ └º╟╪ └╠└ⁿ URL└╗ ░Φ╝╙ ┴ª░°╟╧░φ
  997.           ╜═┤┘░φ ░í┴ñ╟╧└┌. ▒╫╖»│¬ └╠┴ª┤┬ └╠└ⁿ URL└╗ ╗τ┐δ╟╧╕Θ
  998.           ╗τ┐δ└┌┐í░╘ ╗⌡╖╬┐ε URL└╗ ╚∙╞«╖╬ ╛╦╖┴┴╪┤┘. ┴∩, ║Ω╢≤┐∞└·
  999.           ┴╓╝╥├ó└╠ ║»╟╤┤┘.</p>
  1000.         </dd>
  1001.  
  1002.         <dt>╟╪░ß├Ñ:</dt>
  1003.  
  1004.         <dd>
  1005.           <p>╗⌡╖╬┐ε URL╖╬ HTTP ╕«┤┘└╠╖║╝╟╟╧┤┘. ▒╫╖»╕Θ ║Ω╢≤┐∞└·░í
  1006.           ╗⌡╖╬┐ε URL╕ª ║╕└╠░φ ║»░µ╗τ╜╟└╗ ╗τ┐δ└┌░í ╛╦░╘╡╚┤┘:</p>
  1007.  
  1008. <div class="example"><pre>
  1009. RewriteEngine  on
  1010. RewriteBase    /~quux/
  1011. RewriteRule    ^<strong>foo</strong>\.html$  <strong>bar</strong>.html  [<strong>R</strong>]
  1012. </pre></div>
  1013.         </dd>
  1014.       </dl>
  1015.  
  1016.     
  1017.  
  1018.     <h3>║Ω╢≤┐∞└·┐í ╡√╕Ñ │╗┐δ</h3>
  1019.  
  1020.       
  1021.  
  1022.       <dl>
  1023.         <dt>╗≤╚▓╝│╕φ:</dt>
  1024.  
  1025.         <dd>
  1026.           <p>├╓╝╥╟╤ ┴▀┐Σ╟╤ ├╓╗≤└º ╞Σ└╠┴÷┤┬ ║Ω╢≤┐∞└·┐í ├╓└√╚¡╡╚
  1027.           │╗┐δ└╕╖╬ ╝¡║±╜║╟╪╛▀╟╥ ░µ┐∞░í └╓┤┘. ┴∩, ├╓╜┼ Netscape
  1028.           ║Ω╢≤┐∞└·┐í░╘┤┬ ├╓╗≤└╟ ╣÷└ⁿ└╗, Lynx ║Ω╢≤┐∞└·┐í░╘┤┬
  1029.           ├╓└· ╣÷└ⁿ└╗, │¬╕╙┴÷ ║Ω╢≤┐∞└·┐í┤┬ ╞≥▒╒└√└╬ ╣÷└ⁿ└╗
  1030.           ┴ª░°╟╤┤┘.</p>
  1031.         </dd>
  1032.  
  1033.         <dt>╟╪░ß├Ñ:</dt>
  1034.  
  1035.         <dd>
  1036.           <p>║Ω╢≤┐∞└·░í │╗┐δ╟∙╗≤└╗ └º╟╪ └┌╜┼└╟ ┴╛╖∙┐í ┤δ╟╤ ┴ñ║╕╕ª
  1037.           ┴ª░°╟╧┴÷ ╛╩▒Γ╢º╣«┐í │╗┐δ╟∙╗≤└╗ ╗τ┐δ╟╥ ╝÷ ╛°┤┘. ┤δ╜┼
  1038.           HTTP "User-Agent" ╟∞┤⌡╕ª ╗τ┐δ╟╤┤┘. ┤┘└╜ ▒╘─ó└║ HTTP
  1039.           "User-Agent" ╟∞┤⌡░í "Mozilla/3"└╕╖╬ ╜├└█╟╧╕Θ
  1040.           <code>foo.html</code> ╞Σ└╠┴÷╕ª <code>foo.NS.html</code>╖╬
  1041.           └τ└█╝║╟╧░φ └τ└█╝║└╗ ┴▀┤▄╟╤┤┘. ║Ω╢≤┐∞└·░í "Lynx"│¬
  1042.           "Mozilla" ╣÷└ⁿ 1 ╚ñ└║ 2╢≤╕Θ URL└║
  1043.           <code>foo.20.html</code>└╠ ╡╚┤┘. │¬╕╙┴÷ ║Ω╢≤┐∞└·┤┬
  1044.           <code>foo.32.html</code> ╞Σ└╠┴÷╕ª ╣▐┤┬┤┘. ╛╞╖í ▒╘─ó└╠
  1045.           └╠ └█╛≈└╗ ╟╤┤┘:</p>
  1046.  
  1047. <div class="example"><pre>
  1048. RewriteCond %{HTTP_USER_AGENT}  ^<strong>Mozilla/3</strong>.*
  1049. RewriteRule ^foo\.html$         foo.<strong>NS</strong>.html          [<strong>L</strong>]
  1050.  
  1051. RewriteCond %{HTTP_USER_AGENT}  ^<strong>Lynx/</strong>.*         [OR]
  1052. RewriteCond %{HTTP_USER_AGENT}  ^<strong>Mozilla/[12]</strong>.*
  1053. RewriteRule ^foo\.html$         foo.<strong>20</strong>.html          [<strong>L</strong>]
  1054.  
  1055. RewriteRule ^foo\.html$         foo.<strong>32</strong>.html          [<strong>L</strong>]
  1056. </pre></div>
  1057.         </dd>
  1058.       </dl>
  1059.  
  1060.     
  1061.  
  1062.     <h3>╡┐└√ ╣╠╖»</h3>
  1063.  
  1064.       
  1065.  
  1066.       <dl>
  1067.         <dt>╗≤╚▓╝│╕φ:</dt>
  1068.  
  1069.         <dd>
  1070.           <p>┐▄║╬ ╚ú╜║╞«┐í ┐∞╕« ╗τ└╠╞«╖╬ ░í┴«┐└░φ ╜═└║ ┴┴└║
  1071.           └Ñ╞Σ└╠┴÷░í └╓┤┘░φ ░í┴ñ╟╧└┌. FTP ╝¡╣÷└╟ ░µ┐∞ ┴≈┴ó ┐▄║╬
  1072.           └┌╖ß└╟ ├╓╜┼║╣╗τ║╗└╗ └»┴÷╟╧┤┬ <code>mirror</code> ╟┴╖╬▒╫╖Ñ└╗
  1073.           ╗τ┐δ╟╥ ╝÷ └╓░φ, └Ñ╝¡╣÷╢≤╕Θ HTTP╖╬ ║±╜┴╟╤ └█╛≈└╗ ╟╧┤┬
  1074.           <code>webcopy</code> ╟┴╖╬▒╫╖Ñ└╗ ╗τ┐δ╟╥ ╝÷ └╓┤┘. ▒╫╖»│¬
  1075.           ╡╬ ╣µ╣² ╕≡╡╬ ┤▄┴í└╠ └╓┤┘: ║╣╗τ║╗└║ ░í▓√╛┐ ╟┴╖╬▒╫╖Ñ└╗
  1076.           ╜╟╟α╟╪┴┘ ╢º╕╕ ├╓╜┼╞╟└╕╖╬ └»┴÷╡╚┤┘. ┴≈┴ó ▒╕╝║╟╪╛▀╟╧┤┬
  1077.           ┴ñ└√└╬ ╣╠╖»░í ╛╞┤╧╢≤╕Θ ┴┴░┌┤┘. ┤δ╜┼ (┐▄║╬ ╚ú╜║╞«┐í╝¡
  1078.           └┌╖ß░í ░╗╜┼╡╟╕Θ) ╟╩┐Σ╟╥╢º └┌╡┐└╕╖╬ └┌╖ß╕ª ░╗╜┼╟╧┤┬
  1079.           ╡┐└√ ╣╠╖»░í ╟╩┐Σ╟╧┤┘.</p>
  1080.         </dd>
  1081.  
  1082.         <dt>╟╪░ß├Ñ:</dt>
  1083.  
  1084.         <dd>
  1085.           <p>└╠╕ª └º╟╪ <dfn>Proxy Throughput</dfn> ▒Γ┤╔└╗ (╟├╖í▒╫
  1086.           <code>[P]</code>) ╗τ┐δ╟╧┐⌐ ┐▄║╬ └Ñ╞Σ└╠┴÷ ╚ñ└║ ┐▄║╬
  1087.           └Ñ░°░ú └ⁿ├╝╕ª ┐∞╕« └╠╕º░°░ú└╕╖╬ ┤δ└└╟╤┤┘:</p>
  1088.  
  1089. <div class="example"><pre>
  1090. RewriteEngine  on
  1091. RewriteBase    /~quux/
  1092. RewriteRule    ^<strong>hotsheet/</strong>(.*)$  <strong>http://www.tstimpreso.com/hotsheet/</strong>$1  [<strong>P</strong>]
  1093. </pre></div>
  1094.  
  1095. <div class="example"><pre>
  1096. RewriteEngine  on
  1097. RewriteBase    /~quux/
  1098. RewriteRule    ^<strong>usa-news\.html</strong>$   <strong>http://www.quux-corp.com/news/index.html</strong>  [<strong>P</strong>]
  1099. </pre></div>
  1100.         </dd>
  1101.       </dl>
  1102.  
  1103.     
  1104.  
  1105.     <h3>╡┐└√ ┐¬╣╠╖»</h3>
  1106.  
  1107.       
  1108.  
  1109.       <dl>
  1110.         <dt>╗≤╚▓╝│╕φ:</dt>
  1111.  
  1112.         <dd>...</dd>
  1113.  
  1114.         <dt>╟╪░ß├Ñ:</dt>
  1115.  
  1116.         <dd>
  1117. <div class="example"><pre>
  1118. RewriteEngine on
  1119. RewriteCond   /mirror/of/remotesite/$1           -U
  1120. RewriteRule   ^http://www\.remotesite\.com/(.*)$ /mirror/of/remotesite/$1
  1121. </pre></div>
  1122.         </dd>
  1123.       </dl>
  1124.  
  1125.     
  1126.  
  1127.     <h3>╛°┤┬ └┌╖ß╕ª └╬╞«╢≤│▌┐í╝¡ ░í┴«┐└▒Γ</h3>
  1128.  
  1129.       
  1130.  
  1131.       <dl>
  1132.         <dt>╗≤╚▓╝│╕φ:</dt>
  1133.  
  1134.         <dd>
  1135.           <p>╜╟┴ª └┌╖ß╕ª ╣µ╚¡║«└╠ ║╕╚ú╟╧┤┬ (│╗║╬) └╬╞«╢≤│▌ └Ñ╝¡╣÷┐í
  1136.           (<code>www2.quux-corp.dom</code>) └·└σ╟╧╕Θ╝¡, ▒Γ╛≈└╟
  1137.           (┐▄║╬) └╬┼═│▌ └Ñ╝¡╣÷╕ª (<code>www.quux-corp.dom</code>)
  1138.           ╜╟╟α╟╧┤┬ ░═├│╖│ ║╕└╠░╘ ╟╤┤┘. ┐▄║╬ └Ñ╝¡╣÷┤┬ ┐Σ├╗╟╤
  1139.           └┌╖ß╕ª │╗║╬ └Ñ╝¡╣÷┐í╝¡ ░í┴«┐┬┤┘.</p>
  1140.         </dd>
  1141.  
  1142.         <dt>╟╪░ß├Ñ:</dt>
  1143.  
  1144.         <dd>
  1145.           <p>╕╒└· ╣µ╚¡║«└╠ │╗║╬ └Ñ╝¡╣÷╕ª ║╕╚ú╟╧░φ ┐▄║╬ └Ñ╝¡╣÷╕╕└╠
  1146.           │╗║╬ └Ñ╝¡╣÷┐í╝¡ └┌╖ß╕ª ╛≥└╗ ╝÷ └╓░╘ ╟╤┤┘. ┤┘└╜░· ░░└╠
  1147.           ╞╨┼╢╟╩┼═╕╡ ╣µ╚¡║«└╗ ╝│┴ñ╟╤┤┘:</p>
  1148.  
  1149. <div class="example"><pre>
  1150. <strong>ALLOW</strong> Host www.quux-corp.dom Port >1024 --> Host www2.quux-corp.dom Port <strong>80</strong>
  1151. <strong>DENY</strong>  Host *                 Port *     --> Host www2.quux-corp.dom Port <strong>80</strong>
  1152. </pre></div>
  1153.  
  1154.           <p>╜╟┴ª ╝│┴ñ╣«╣²┐í ╛╦╕┬░╘ ░φ├─╢≤. ╛°┤┬ └┌╖ß╕ª │╗║╬└√└╕╖╬
  1155.           proxy throughput ▒Γ┤╔└╗ ┼δ╟╪ ┐Σ├╗╟╧┤┬
  1156.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> ▒╘─ó└╗ └█╝║╟╤┤┘:</p>
  1157.  
  1158. <div class="example"><pre>
  1159. RewriteRule ^/~([^/]+)/?(.*)          /home/$1/.www/$2
  1160. RewriteCond %{REQUEST_FILENAME}       <strong>!-f</strong>
  1161. RewriteCond %{REQUEST_FILENAME}       <strong>!-d</strong>
  1162. RewriteRule ^/home/([^/]+)/.www/?(.*) http://<strong>www2</strong>.quux-corp.dom/~$1/pub/$2 [<strong>P</strong>]
  1163. </pre></div>
  1164.         </dd>
  1165.       </dl>
  1166.  
  1167.     
  1168.  
  1169.     <h3>╖╬╡σ╣δ╖▒╜╠ (║╬╟╧ ║╨╗Ω╟╧▒Γ)</h3>
  1170.  
  1171.       
  1172.  
  1173.       <dl>
  1174.         <dt>╗≤╚▓╝│╕φ:</dt>
  1175.  
  1176.         <dd>
  1177.           <p><code>www.foo.com</code>└╟ ┼δ╜┼╖«└╗
  1178.           <code>www[0-5].foo.com</code> (├╤ ╝¡╣÷ 6┤δ)└╕╖╬ ║╨╗Ω╟╧░φ
  1179.           ╜═┤┘. ╛ε╢╗░╘ ╟╧┤┬░í?</p>
  1180.         </dd>
  1181.  
  1182.         <dt>╟╪░ß├Ñ:</dt>
  1183.  
  1184.         <dd>
  1185.           <p>╕┼┐∞ ┤┘╛τ╟╤ ╣µ╣²└╕╖╬ └╠ ╣«┴ª╕ª ╟╪░ß╟╥ ╝÷ └╓┤┘.
  1186.           ╕╒└· DNS╕ª ╗τ┐δ╟╤ └▀ ╛╦╖┴┴° ╣µ╣²└╗ ╝│╕φ╟╧░φ,
  1187.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╕ª ╗τ┐δ╟╧┤┬ ░µ┐∞╕ª ╗∞╞∞║╕└┌:</p>
  1188.  
  1189.           <ol>
  1190.             <li>
  1191.               <strong>DNS Round-Robin</strong>
  1192.  
  1193.               <p>░í└σ ░ú┤▄╟╤ ╖╬╡σ╣δ╖▒╜╠ ╣µ╣²└║ <code>BIND</code>└╟
  1194.               DNS round-robin ╣µ╜─└╗ ╗τ┐δ╟╧┤┬ ░═└╠┤┘. ┤┘└╜░·
  1195.               ░░└╠ DNS A(address) ╖╣─┌╡σ┐í
  1196.               <code>www[0-9].foo.com</code>└╗ ╝│┴ñ╟╤┤┘.</p>
  1197.  
  1198. <div class="example"><pre>
  1199. www0   IN  A       1.2.3.1
  1200. www1   IN  A       1.2.3.2
  1201. www2   IN  A       1.2.3.3
  1202. www3   IN  A       1.2.3.4
  1203. www4   IN  A       1.2.3.5
  1204. www5   IN  A       1.2.3.6
  1205. </pre></div>
  1206.  
  1207.               <p>▒╫╕«░φ ┤┘└╜ ╟╫╕±└╗ ├▀░í╟╤┤┘:</p>
  1208.  
  1209. <div class="example"><pre>
  1210. www    IN  CNAME   www0.foo.com.
  1211.        IN  CNAME   www1.foo.com.
  1212.        IN  CNAME   www2.foo.com.
  1213.        IN  CNAME   www3.foo.com.
  1214.        IN  CNAME   www4.foo.com.
  1215.        IN  CNAME   www5.foo.com.
  1216.        IN  CNAME   www6.foo.com.
  1217. </pre></div>
  1218.  
  1219.               <p>└▀╕°╡╚ ░═├│╖│ ║╕└╠┴÷╕╕, ╜╟┴ª╖╬ <code>BIND</code>└╟
  1220.               └╟╡╡╡╚ ▒Γ┤╔└╠┤┘. └╠┴ª <code>www.foo.com</code>└╗
  1221.               ├ú└╕╕Θ, <code>BIND</code>┤┬ ╕┼╣° ╝°╝¡╕ª ┴╢▒▌╛┐
  1222.               ╣┘▓π░í╕τ <code>www0-www6</code>└╗ ╣▌╚»╟╤┤┘. ▒╫╖í╝¡
  1223.               ┼¼╢≤└╠╛≡╞«╡Θ└╗ ┐⌐╖» ╝¡╣÷╖╬ ║╨╗Ω╟╤┤┘. ▒╫╖»│¬ DNS
  1224.               ░╦╗÷ ░ß░·░í │╫╞«┐≈└╟ ┤┘╕Ñ │╫└╙╝¡╣÷┐í ─│╜¼╡╟┐⌐
  1225.               <code>www.foo.com</code>└╗ ├ú└║ ░ß░·░í ╞»┴ñ
  1226.               <code>wwwN.foo.com</code>└╠╕Θ ┼¼╢≤└╠╛≡╞«└╟ ┤┘└╜
  1227.               ┐Σ├╗╡Θ╡╡ ░░└║ <code>wwwN.foo.com</code>└╕╖╬
  1228.               ║╕│╗┴÷▒Γ╢º╣«┐í ┐╧║«╟╤ ╖╬╡σ╣δ╖▒╜╠ ▒Γ╣²└╠ ╛╞┤╘└╗
  1229.               ┴╓└╟╟╧╢≤. ▒╫╖»│¬ ┼⌐░╘ ║╕╕Θ ┐Σ├╗└╠ ┐⌐╖» └Ñ╝¡╣÷┐í
  1230.               ║╨╗Ω╡╟╣╟╖╬ ╚┐░·░í ┴┴┤┘.</p>
  1231.             </li>
  1232.  
  1233.             <li>
  1234.               <strong>DNS ╖╬╡σ╣δ╖▒╜╠</strong>
  1235.  
  1236.               <p><a href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>┐í
  1237.               └╓┤┬ <code>lbnamed</code> ╟┴╖╬▒╫╖Ñ└╗ ╗τ┐δ╟╧┐⌐
  1238.               ┴ñ▒│╟╤ DNS▒Γ╣▌ ╖╬╡σ╣δ╖▒╜╠└╗ ╟╥ ╝÷ └╓┤┘. DNS░í
  1239.               ╜╟┴ª ╖╬╡σ╣δ╖▒╜╠└╗ ╟╧╡╡╖╧ ╕╕╡σ┤┬ ┐⌐╖» ╡╡▒╕┐═ Perl
  1240.               5 ╟┴╖╬▒╫╖Ñ└╠┤┘.</p>
  1241.             </li>
  1242.  
  1243.             <li>
  1244.               <strong>Proxy Throughput Round-Robin</strong>
  1245.  
  1246.               <p>└╠ ╣µ╣²└║ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>┐═ proxy
  1247.               throughput ▒Γ┤╔└╗ ╗τ┐δ╟╤┤┘. ╕╒└· DNS┐í ┤┘└╜ ╟╫╕±└╗
  1248.               ╗τ┐δ╟╧┐⌐ <code>www0.foo.com</code>└╠ ╜╟┴ª
  1249.               <code>www.foo.com</code>└╗ └ⁿ┤π╟╧░╘ ╟╤┤┘</p>
  1250.  
  1251. <div class="example"><pre>
  1252. www    IN  CNAME   www0.foo.com.
  1253. </pre></div>
  1254.  
  1255.               <p>▒╫╕«░φ <code>www0.foo.com</code>└╗ ╟┴╖╧╜├└ⁿ┐δ
  1256.               ╝¡╣÷╖╬ ║»░µ╟╤┤┘. ┴∩, URL└╗ ╣▐└╕╕Θ ╝¡╣÷┤┬ │╗║╬
  1257.               ╟┴╖╧╜├╕ª ┼δ╟╪ ┤┘╕Ñ 5┤δ ╝¡╣÷┴▀ (<code>www1-www5</code>)
  1258.               ╟╤┤δ╖╬ ║╕│╗▒Γ╕╕ ╟╤┤┘. └╠╕ª └º╟╪ ╕╒└· ╕≡╡τ URL└╗
  1259.               ╖╬╡σ╣δ╖▒╜╠ ╜║┼⌐╕│╞« <code>lb.pl</code>╖╬ ║╕│╗┤┬
  1260.               ▒╘─ó└╗ ╕╕╡τ┤┘.</p>
  1261.  
  1262. <div class="example"><pre>
  1263. RewriteEngine on
  1264. RewriteMap    lb      prg:/path/to/lb.pl
  1265. RewriteRule   ^/(.+)$ ${lb:$1}           [P,L]
  1266. </pre></div>
  1267.  
  1268.               <p><code>lb.pl</code>└╗ └█╝║╟╤┤┘:</p>
  1269.  
  1270. <div class="example"><pre>
  1271. #!/path/to/perl
  1272. ##
  1273. ##  lb.pl -- ╖╬╡σ╣δ╖▒╜╠ ╜║┼⌐╕│╞«
  1274. ##
  1275.  
  1276. $| = 1;
  1277.  
  1278. $name   = "www";     # ▒Γ║╗ ╚ú╜║╞«╕φ
  1279. $first  = 1;         # ├╣╣°┬░ ╝¡╣÷ (└┌╜┼└╠ 0└╠▒Γ ╢º╣«┐í, 0└╗ ╗τ┐δ╟╧┴÷ ╛╩┤┬┤┘)
  1280. $last   = 5;         # round-robin┐í╝¡ ╕╢┴÷╕╖ ╝¡╣÷
  1281. $domain = "foo.dom"; # ╡╡╕▐└╬╕φ
  1282.  
  1283. $cnt = 0;
  1284. while (<STDIN>) {
  1285.     $cnt = (($cnt+1) % ($last+1-$first));
  1286.     $server = sprintf("%s%d.%s", $name, $cnt+$first, $domain);
  1287.     print "http://$server/$_";
  1288. }
  1289.  
  1290. ##EOF##
  1291. </pre></div>
  1292.  
  1293.               <div class="note">╕╢┴÷╕╖ ┴╓└╟: ┐╓ └╠ ╣µ╣²└╠ └»┐δ╟╤░í?
  1294.               <code>www0.foo.com</code>┐í ║╬┤π└╠ ░í┴÷╛╩┤┬░í?
  1295.               ╣░╖╨, ║╬┤π└╠ ╡╚┤┘. ▒╫╖»│¬ ┤▄╝°╟╤ proxy throughput
  1296.               ┐Σ├╗╕╕ ╟╧▒Γ╢º╣«┐í ▒ª┬·┤┘! ╕≡╡τ SSI, CGI, ePerl
  1297.               ╡ε└║ └ⁿ└√└╕╖╬ ┤┘╕Ñ ╝¡╣÷░í ├│╕«╟╤┤┘. └╠░═└╠ ╟┘╜╔└╠┤┘.</div>
  1298.             </li>
  1299.  
  1300.             <li>
  1301.               <strong>╟╧╡σ┐■╛ε/TCP Round-Robin</strong>
  1302.  
  1303.               <p>╟╧╡σ┐■╛ε╕ª ╗τ┐δ╟╤ ╟╪░ß├Ñ╡╡ └╓┤┘. Cisco┤┬ TCP/IP
  1304.               ╝÷┴╪┐í╝¡ ╖╬╡σ╣δ╖▒╜╠└╗ ╟╧┤┬ LocalDirector╢≤┤┬ ▒½╣░└╗
  1305.               ╞╟┤┘. ╜╟┴ª╖╬┤┬ └Ñ╝¡╣÷▒║ ╛╒┤▄┐í └º─í╟╧┤┬ └╧┴╛└╟
  1306.               ╚╕╖╬╝÷┴╪ ░╘└╠╞«┐■└╠┤┘. └┌▒▌└╠ ├µ║╨╟╧░φ ░φ╝║┤╔
  1307.               ╟╪░ß├Ñ└╠ ╟╩┐Σ╟╧┤┘╕Θ └╠░═└╗ ╗τ┐δ╟╧╢≤.</p>
  1308.             </li>
  1309.           </ol>
  1310.         </dd>
  1311.       </dl>
  1312.  
  1313.     
  1314.  
  1315.     <h3>╗⌡╖╬┐ε MIME-type, ╗⌡╖╬┐ε ╝¡║±╜║</h3>
  1316.  
  1317.       
  1318.  
  1319.       <dl>
  1320.         <dt>╗≤╚▓╝│╕φ:</dt>
  1321.  
  1322.         <dd>
  1323.           <p>│╫╞«┐≈┐í┤┬ ╕┌┴° CGI ╟┴╖╬▒╫╖Ñ╡Θ└╠ ╕╣┤┘. ▒╫╖»│¬ ╗τ┐δ╟╧▒Γ
  1324.           ╣°░┼╖»┐÷╝¡ ╕╣└║ └Ñ░ⁿ╕«└┌░í ╗τ┐δ╟╧┴÷ ╛╩┤┬┤┘. ╛╞╞──í└╟
  1325.           MIME-type┐í ╡√╕Ñ Action ╟┌╡Θ╖» ▒Γ┤╔╡╡ CGI ╟┴╖╬▒╫╖Ñ└╠
  1326.           ╞»║░╟╤ URL└╗ (┴ñ╚«╚≈ <code>PATH_INFO</code>┐═
  1327.           <code>QUERY_STRINGS</code>) ╟┴╖╬▒╫╖Ñ└╟ └╘╖┬└╕╖╬ ╗τ┐δ╟╧┴÷
  1328.           ╛╩└╗ ╢º╕╕ └√└²╟╧┤┘. ╕╒└·, ╚«└σ└┌░í (secure CGI╕ª ┴┘┐⌐)
  1329.           <code>.scgi</code>└╬ ╞─└╧└╗ └»╕φ╟╤ <code>cgiwrap</code>
  1330.           ╟┴╖╬▒╫╖Ñ└╕╖╬ ├│╕«╟╧▒Γ└º╟╪ ╗⌡╖╬┐ε type└╗ ╝│┴ñ╟╤┤┘.
  1331.           ╣«┴ª┤┬ (└º┐í╝¡ ║╗) └╧░ⁿ╡╚ URL ▒╕┴╢╕ª ╗τ┐δ╟╧┤┬ ░µ┐∞
  1332.           ╗τ┐δ└┌ ╚¿╡≡╖║┼Σ╕«░í <code>/u/user/foo/bar.scgi</code>░░└║
  1333.           URL└╬ ┴í└╠┤┘. <code>cgiwrap</code>┤┬
  1334.           <code>/~user/foo/bar.scgi/</code> ╟ⁿ╜─└╟ URL└╗
  1335.           ┐°╟╧▒Γ╢º╣«└╠┤┘. ┤┘└╜ ▒╘─ó└╠ ╣«┴ª╕ª ╟╪░ß╟╤┤┘:</p>
  1336.  
  1337. <div class="example"><pre>
  1338. RewriteRule ^/[uge]/<strong>([^/]+)</strong>/\.www/(.+)\.scgi(.*) ...
  1339. ... /internal/cgi/user/cgiwrap/~<strong>$1</strong>/$2.scgi$3  [NS,<strong>T=application/x-http-cgi</strong>]
  1340. </pre></div>
  1341.  
  1342.           <p>└╠┴ª ┤┘╕Ñ ╕┌┴° ╟┴╖╬▒╫╖Ñ, (URL ╟╧└º╞«╕«┐í ┤δ╟╤
  1343.           <code>access.log</code>╕ª ├Γ╖┬╟╧┤┬) <code>wwwlog</code>┐═
  1344.           (URL ╟╧└º╞«╕«┐í Glimpse╕ª ╜╟╟α╟╧┤┬) <code>wwwidx</code>░í
  1345.           └╓┤┘░φ ░í┴ñ╟╧└┌. ┐∞╕«┤┬ ╟┴╖╬▒╫╖Ñ┐í░╘ └█╛≈╟╥ ┤δ╗≤└╬
  1346.           URL ┐╡┐¬└╗ ╛╦╖┴┴α╛▀ ╟╤┤┘. ▒╫╖»│¬ ┐Σ├╗╟╥╢º╕╢┤┘ ╟╫╗≤
  1347.           └√╛ε┴α╛▀ ╟╧▒Γ╢º╣«┐í ▒≥▓√╟╧┴÷ ╛╩┤┘. ┴∩, ║╕┼δ
  1348.           <code>/u/user/foo/</code>┐í ┤δ╟╪ <code>swwidx</code>
  1349.           ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╤┤┘╕Θ ┤┘└╜░· ░░└║ ╕╡┼⌐╕ª ╗τ┐δ╟╤┤┘</p>
  1350.  
  1351. <div class="example"><pre>
  1352. /internal/cgi/user/swwidx?i=/u/user/foo/
  1353. </pre></div>
  1354.  
  1355.           <p>▒≥▓√╟╧┴÷ ╛╩┤┘. ╕╡┼⌐┐í ┐╡┐¬└╟ └º─í<strong>┐═</strong>
  1356.           CGI └º─í╕ª <strong>╕≡╡╬</strong> └√╛ε╛▀ ╟╧▒Γ╢º╣«└╠┤┘.
  1357.           ┐╡┐¬└╗ └τ▒╕╝║╟╤┤┘╕Θ ┐⌐╖» ╟╧└╠╞█╕╡┼⌐╕ª ╝÷┴ñ╟╧┤┬╡Ñ ╕╣└║
  1358.           ╜├░ú└╠ ░╔╕▒ ░═└╠┤┘.</p>
  1359.         </dd>
  1360.  
  1361.         <dt>╟╪░ß├Ñ:</dt>
  1362.  
  1363.         <dd>
  1364.           <p>╟╪░ß├Ñ└║ └┌╡┐└╕╖╬ └√└²╟╤ CGI╕ª ╜╟╟α╟╧┤┬ ╗⌡╖╬┐ε
  1365.           ╞»║░╟╤ URL ╟ⁿ╜─└╗ ╕╕╡σ┤┬ ░═└╠┤┘. ┤┘└╜░· ░░└╠ ╝│┴ñ╟╤┤┘:</p>
  1366.  
  1367. <div class="example"><pre>
  1368. RewriteRule   ^/([uge])/([^/]+)(/?.*)/\*  /internal/cgi/user/wwwidx?i=/$1/$2$3/
  1369. RewriteRule   ^/([uge])/([^/]+)(/?.*):log /internal/cgi/user/wwwlog?f=/$1/$2$3
  1370. </pre></div>
  1371.  
  1372.           <p>└╠┴ª <code>/u/user/foo/</code>└╗ ░╦╗÷╟╧┤┬ ╕╡┼⌐┤┬
  1373.           ┤┘└╜░· ░░┤┘</p>
  1374.  
  1375. <div class="example"><pre>
  1376. HREF="*"
  1377. /u/user/foo/* (???)
  1378. </pre></div>
  1379.  
  1380.           <p>│╗║╬└√└╕╖╬ ┤┘└╜░· ░░└╠ └┌╡┐║»╚»╡╚┤┘</p>
  1381.  
  1382. <div class="example"><pre>
  1383. /internal/cgi/user/wwwidx?i=/u/user/foo/
  1384. </pre></div>
  1385.  
  1386.           <p>░░└║ ╣µ╣²└╕╖╬ ╕╡┼⌐ ╡┌┐í <code>:log</code>╕ª ╗τ┐δ╟╧┐⌐
  1387.           ┴ó▒┘ ╖╬▒╫ CGI ╟┴╖╬▒╫╖Ñ└╗ ╜╟╟α╟╥ ╝÷ └╓┤┘.</p>
  1388.         </dd>
  1389.       </dl>
  1390.  
  1391.     
  1392.  
  1393.     <h3>┴ñ└√┐í╝¡ ╡┐└√└╕╖╬</h3>
  1394.  
  1395.       
  1396.  
  1397.       <dl>
  1398.         <dt>╗≤╚▓╝│╕φ:</dt>
  1399.  
  1400.         <dd>
  1401.           <p>╛ε╢╗░╘ ║Ω╢≤┐∞└·┐═ ╗τ┐δ└┌░í ╕≡╕ú░╘ └┌┐¼╜║╖┤░╘ ┴ñ└√
  1402.           ╞Σ└╠┴÷ <code>foo.html</code>└╗ ╡┐└√└╬ <code>foo.cgi</code>╖╬
  1403.           ║»░µ╟╥ ╝÷ └╓│¬.</p>
  1404.         </dd>
  1405.  
  1406.         <dt>╟╪░ß├Ñ:</dt>
  1407.  
  1408.         <dd>
  1409.           <p>URL└╗ CGI ╜║┼⌐╕│╞«╖╬ └τ└█╝║╟╧░φ, MIME-type└╗ ╝÷┴ñ╟╧┐⌐
  1410.           CGI ╜║┼⌐╕│╞«╖╬ ╜╟╟α╟╧░╘ ╟╤┤┘. ▒╫╖í╝¡
  1411.           <code>/~quux/foo.html</code>╕ª ┐Σ├╗╟╧╕Θ │╗║╬└√└╕╖╬
  1412.           <code>/~quux/foo.cgi</code>╕ª ╜╟╟α╟╧░╘ ╡╚┤┘.</p>
  1413.  
  1414. <div class="example"><pre>
  1415. RewriteEngine  on
  1416. RewriteBase    /~quux/
  1417. RewriteRule    ^foo\.<strong>html</strong>$  foo.<strong>cgi</strong>  [T=<strong>application/x-httpd-cgi</strong>]
  1418. </pre></div>
  1419.         </dd>
  1420.       </dl>
  1421.  
  1422.     
  1423.  
  1424.     <h3>┴∩╝« ─┴┼┘├≈ └τ╗²╝║</h3>
  1425.  
  1426.       
  1427.  
  1428.       <dl>
  1429.         <dt>╗≤╚▓╝│╕φ:</dt>
  1430.  
  1431.         <dd>
  1432.           <p>└╠ ╣µ╣²└║ ╜╟╖╬ ║±▒Γ└╠┤┘: ╡┐└√└╕╖╬ ╞Σ└╠┴÷╕ª ╗²╝║╟╧┴÷╕╕,
  1433.           ┴ñ└√└╕╖╬ ╞Σ└╠┴÷╕ª ╝¡║±╜║╟╤┤┘. ┴∩, ╞Σ└╠┴÷┤┬ ╝°╝÷╟╧░╘
  1434.           (╞─└╧╜├╜║┼█┐í╝¡ └╨└║ │╗┐δ└╗ ▒╫┤δ╖╬) ┴ñ└√ ╞Σ└╠┴÷╖╬
  1435.           └ⁿ┤▐╡╟┴÷╕╕, ╛°└╗ ░µ┐∞ └Ñ╝¡╣÷░í ╡┐└√└╕╖╬ ╗²╝║╟╤┤┘.
  1436.           ▒╫╖»╕Θ ┤⌐░í (╚ñ└║ cron └█╛≈└╠) ┴ñ└√ ─┴┼┘├≈╕ª ┴÷┐∞┴÷╛╩┤┬
  1437.           ╟╤ CGI░í ╗²╝║╟╤ ╞Σ└╠┴÷╕ª ┴ñ└√└╕╖╬ ╝¡║±╜║╟╤┤┘. ─┴┼┘├≈╕ª
  1438.           ┴÷┐∞╕Θ │╗┐δ└╗ ░╗╜┼╟╤┤┘.</p>
  1439.         </dd>
  1440.  
  1441.         <dt>╟╪░ß├Ñ:</dt>
  1442.  
  1443.         <dd>
  1444.           ┤┘└╜ ▒╘─ó└╗ ╗τ┐δ╟╤┤┘:
  1445.  
  1446. <div class="example"><pre>
  1447. RewriteCond %{REQUEST_FILENAME}   <strong>!-s</strong>
  1448. RewriteRule ^page\.<strong>html</strong>$          page.<strong>cgi</strong>   [T=application/x-httpd-cgi,L]
  1449. </pre></div>
  1450.  
  1451.           <p>┐⌐▒Γ╝¡ <code>page.html</code>╕ª ┐Σ├╗╟╥╢º
  1452.           <code>page.html</code>└╠ ╛°░┼│¬ ╞─└╧┼⌐▒Γ░í 0└╬ ░µ┐∞
  1453.           │╗║╬└√└╕╖╬ <code>page.cgi</code>╕ª ╜╟╟α╟╤┤┘. ┐⌐▒Γ╝¡
  1454.           ║±░ß└║ <code>page.cgi</code>░í └╧╣▌└√└╬ CGI ╜║┼⌐╕│╞«┐═
  1455.           ░░└╠ <code>STDOUT</code>┐í ├Γ╖┬╟╧░φ, ├▀░í╖╬ ├Γ╖┬└╗
  1456.           <code>page.html</code> ╞─└╧┐í └√┤┬┤┘. ╟╤╣° ╜╟╟α╟╤╚─
  1457.           ╝¡╣÷┤┬ <code>page.html</code>└╟ ┴ñ║╕╕ª ║╕│╜┤┘. └Ñ░ⁿ╕«└┌░í
  1458.           ░¡└τ╖╬ │╗┐δ└╗ ░╗╜┼╟╧░φ ╜═┤┘╕Θ, (║╕┼δ cron └█╛≈└╠)
  1459.           <code>page.html</code>└╗ ┴÷┐∞▒Γ╕╕ ╟╧╕Θ ╡╚┤┘.</p>
  1460.         </dd>
  1461.       </dl>
  1462.  
  1463.     
  1464.  
  1465.     <h3>└┌╡┐└╕╖╬ ╗⌡╖╬ ░φ─º╟╧┤┬ ╣«╝¡</h3>
  1466.  
  1467.       
  1468.  
  1469.       <dl>
  1470.         <dt>╗≤╚▓╝│╕φ:</dt>
  1471.  
  1472.         <dd>
  1473.           <p>║╣└Γ╟╤ └Ñ╞Σ└╠┴÷╕ª ╕╕╡Θ╢º ╞φ┴²└┌░í │╗┐δ└╗ ╝÷┴ñ╟╥
  1474.           ╢º╕╢┤┘ └┌╡┐└╕╖╬ ╞Σ└╠┴÷╕ª ╗⌡╖╬ ░φ─º╟╧┤┬ └Ñ║Ω╢≤┐∞└·░í
  1475.           └╓└╕╕Θ ╛≤╕╢│¬ ┴┴└╗▒ε? ║╥░í┤╔╟╤░í?</p>
  1476.         </dd>
  1477.  
  1478.         <dt>╟╪░ß├Ñ:</dt>
  1479.  
  1480.         <dd>
  1481.           <p>░í┤╔╟╧┤┘! MIME multipart ▒Γ┤╔░· └Ñ╝¡╣÷ NPH ▒Γ┤╔,
  1482.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>└╟ URL ┴╢└█ ┤╔╖┬└╗ ░ß╟╒╟╧╕Θ
  1483.           ╡╚┤┘. ╕╒└·, ╗⌡╖╬┐ε URL ▒Γ┤╔└╗ ╕╕╡τ┤┘: URL┐í
  1484.           <code>:refresh</code>╕ª ├▀░í╟╧▒Γ╕╕ ╟╧╕Θ ╞─└╧╜├╜║┼█┐í╝¡
  1485.           ╝÷┴ñ╡╔ ╢º╕╢┤┘ ╗⌡╖╬ ░φ─º╟╤┤┘.</p>
  1486.  
  1487. <div class="example"><pre>
  1488. RewriteRule   ^(/[uge]/[^/]+/?.*):refresh  /internal/cgi/apache/nph-refresh?f=$1
  1489. </pre></div>
  1490.  
  1491.           <p>└╠┴ª ┤┘└╜ URL┐í ┴ó▒┘╟╧╕Θ</p>
  1492.  
  1493. <div class="example"><pre>
  1494. /u/foo/bar/page.html:refresh
  1495. </pre></div>
  1496.  
  1497.           <p>┤┘└╜ URL└╗ │╗║╬└√└╕╖╬ ║╬╕Ñ┤┘</p>
  1498.  
  1499. <div class="example"><pre>
  1500. /internal/cgi/apache/nph-refresh?f=/u/foo/bar/page.html
  1501. </pre></div>
  1502.  
  1503.           <p>└╠┴ª NPH-CGI ╜║┼⌐╕│╞«╕╕ │▓╛╥┤┘. ║╕┼δ "╡╢└┌┐í░╘
  1504.           ┐¼╜└└╕╖╬ │▓░▄╡╥"└╠╢≤░φ ╕╗╟╧┴÷╕╕ ;-) │¬┤┬ └╠░═╡╡ ┴ª░°╟╤┤┘.</p>
  1505.  
  1506. <div class="example"><pre>
  1507. #!/sw/bin/perl
  1508. ##
  1509. ##  nph-refresh -- NPH/CGI script for auto refreshing pages
  1510. ##  Copyright (c) 1997 Ralf S. Engelschall, All Rights Reserved.
  1511. ##
  1512. $| = 1;
  1513.  
  1514. #   split the QUERY_STRING variable
  1515. @pairs = split(/&/, $ENV{'QUERY_STRING'});
  1516. foreach $pair (@pairs) {
  1517.     ($name, $value) = split(/=/, $pair);
  1518.     $name =~ tr/A-Z/a-z/;
  1519.     $name = 'QS_' . $name;
  1520.     $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
  1521.     eval "\$$name = \"$value\"";
  1522. }
  1523. $QS_s = 1 if ($QS_s eq '');
  1524. $QS_n = 3600 if ($QS_n eq '');
  1525. if ($QS_f eq '') {
  1526.     print "HTTP/1.0 200 OK\n";
  1527.     print "Content-type: text/html\n\n";
  1528.     print "&lt;b&gt;ERROR&lt;/b&gt;: No file given\n";
  1529.     exit(0);
  1530. }
  1531. if (! -f $QS_f) {
  1532.     print "HTTP/1.0 200 OK\n";
  1533.     print "Content-type: text/html\n\n";
  1534.     print "&lt;b&gt;ERROR&lt;/b&gt;: File $QS_f not found\n";
  1535.     exit(0);
  1536. }
  1537.  
  1538. sub print_http_headers_multipart_begin {
  1539.     print "HTTP/1.0 200 OK\n";
  1540.     $bound = "ThisRandomString12345";
  1541.     print "Content-type: multipart/x-mixed-replace;boundary=$bound\n";
  1542.     &print_http_headers_multipart_next;
  1543. }
  1544.  
  1545. sub print_http_headers_multipart_next {
  1546.     print "\n--$bound\n";
  1547. }
  1548.  
  1549. sub print_http_headers_multipart_end {
  1550.     print "\n--$bound--\n";
  1551. }
  1552.  
  1553. sub displayhtml {
  1554.     local($buffer) = @_;
  1555.     $len = length($buffer);
  1556.     print "Content-type: text/html\n";
  1557.     print "Content-length: $len\n\n";
  1558.     print $buffer;
  1559. }
  1560.  
  1561. sub readfile {
  1562.     local($file) = @_;
  1563.     local(*FP, $size, $buffer, $bytes);
  1564.     ($x, $x, $x, $x, $x, $x, $x, $size) = stat($file);
  1565.     $size = sprintf("%d", $size);
  1566.     open(FP, "&lt;$file");
  1567.     $bytes = sysread(FP, $buffer, $size);
  1568.     close(FP);
  1569.     return $buffer;
  1570. }
  1571.  
  1572. $buffer = &readfile($QS_f);
  1573. &print_http_headers_multipart_begin;
  1574. &displayhtml($buffer);
  1575.  
  1576. sub mystat {
  1577.     local($file) = $_[0];
  1578.     local($time);
  1579.  
  1580.     ($x, $x, $x, $x, $x, $x, $x, $x, $x, $mtime) = stat($file);
  1581.     return $mtime;
  1582. }
  1583.  
  1584. $mtimeL = &mystat($QS_f);
  1585. $mtime = $mtime;
  1586. for ($n = 0; $n &lt; $QS_n; $n++) {
  1587.     while (1) {
  1588.         $mtime = &mystat($QS_f);
  1589.         if ($mtime ne $mtimeL) {
  1590.             $mtimeL = $mtime;
  1591.             sleep(2);
  1592.             $buffer = &readfile($QS_f);
  1593.             &print_http_headers_multipart_next;
  1594.             &displayhtml($buffer);
  1595.             sleep(5);
  1596.             $mtimeL = &mystat($QS_f);
  1597.             last;
  1598.         }
  1599.         sleep($QS_s);
  1600.     }
  1601. }
  1602.  
  1603. &print_http_headers_multipart_end;
  1604.  
  1605. exit(0);
  1606.  
  1607. ##EOF##
  1608. </pre></div>
  1609.         </dd>
  1610.       </dl>
  1611.  
  1612.     
  1613.  
  1614.     <h3>┤δ╖«└╟ ░í╗≤╚ú╜║╞«</h3>
  1615.  
  1616.       
  1617.  
  1618.       <dl>
  1619.         <dt>╗≤╚▓╝│╕φ:</dt>
  1620.  
  1621.         <dd>
  1622.           <p>░í╗≤╚ú╜║╞«░í ╕ε░│╕╕ └╓┤┘╕Θ ╛╞╞──í└╟ <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>
  1623.           ▒Γ┤╔└╠ └▀ ╡┐└█╟╤┤┘. ▒╫╖»│¬ ░í╗≤╚ú╜║╞«░í ╝÷╣Θ░│ └╓┤┬
  1624.           ISP╢≤╕Θ └╠ ▒Γ┤╔└╠ ├╓╝▒└║ ╛╞┤╧┤┘.</p>
  1625.         </dd>
  1626.  
  1627.         <dt>╟╪░ß├Ñ:</dt>
  1628.  
  1629.         <dd>
  1630.           <p>└╠ ▒Γ┤╔└╗ ┴ª░°╟╧╖┴╕Θ <dfn>Proxy Throughput</dfn>
  1631.           ▒Γ┤╔└╗ (╟├╖í▒╫ <code>[P]</code>) ╗τ┐δ╟╧┐⌐ ┐▄║╬ └Ñ╞Σ└╠┴÷
  1632.           ╚ñ└║ └ⁿ├╝ ┐▄║╬ └Ñ┐╡┐¬└╗ ┐∞╕«└╟ └╠╕º░°░ú┐í ┤δ└└╟╤┤┘:</p>
  1633.  
  1634. <div class="example"><pre>
  1635. ##
  1636. ##  vhost.map
  1637. ##
  1638. www.vhost1.dom:80  /path/to/docroot/vhost1
  1639. www.vhost2.dom:80  /path/to/docroot/vhost2
  1640.      :
  1641. www.vhostN.dom:80  /path/to/docroot/vhostN
  1642. </pre></div>
  1643.  
  1644. <div class="example"><pre>
  1645. ##
  1646. ##  httpd.conf
  1647. ##
  1648.     :
  1649. #   ╕«┤┘└╠╖║╞«╟╥╢º ┴ñ▒╘ ╚ú╜║╞«╕φ└╗ ╗τ┐δ╟╤┤┘.
  1650. UseCanonicalName on
  1651.  
  1652.     :
  1653. #   ░í╗≤╚ú╜║╞«╕ª CLF ╟ⁿ╜─ ╛╒┐í ├▀░í╟╤┤┘
  1654. CustomLog  /path/to/access_log  "%{VHOST}e %h %l %u %t \"%r\" %>s %b"
  1655.     :
  1656.  
  1657. #   ┴╓╝¡╣÷┐í╝¡ └τ└█╝║ ┐ú┴°└╗ ╗τ┐δ╟╤┤┘
  1658. RewriteEngine on
  1659.  
  1660. #   ╡╬ ╕╩└╗ ┴ñ└╟╟╤┤┘: ╟╧│¬┤┬ URL└╗ ░φ─í░φ,
  1661. #   ┤┘╕Ñ ╟╧│¬┤┬ ░í╗≤╚ú╜║╞«║░ DocumentRoot╕ª
  1662. #   ┴ñ└╟╟╤┤┘.
  1663. RewriteMap    lowercase    int:tolower
  1664. RewriteMap    vhost        txt:/path/to/vhost.map
  1665.  
  1666. #   └╠┴ª ┼⌐░φ ║╣└Γ╟╤ ▒╘─ó ╟╤░│╕ª ╗τ┐δ╟╧┐⌐
  1667. #   ░í╗≤╚ú╜║╞«╖╬ ┤δ└└╟╤┤┘.
  1668. #
  1669. #   1. ░í╗≤╚ú╜║╞«╡Θ└╠ ░░└╠ ╗τ┐δ╟╧┤┬ └º─í┤┬ ┤δ└└╟╧┴÷ ╛╩┤┬┤┘
  1670. RewriteCond   %{REQUEST_URI}  !^/commonurl1/.*
  1671. RewriteCond   %{REQUEST_URI}  !^/commonurl2/.*
  1672.     :
  1673. RewriteCond   %{REQUEST_URI}  !^/commonurlN/.*
  1674. #
  1675. #   2. ┐∞╕«░í ╟÷└τ ╗τ┐δ╟╧┤┬ ╣µ╣²└╠ Host ╟∞┤⌡╕ª
  1676. #      ░í╗≤╚ú╜║╞«╕ª ┴÷┐°╟╧╣╟╖╬
  1677. #      Host ╟∞┤⌡░í └╓┤┬┴÷ ╚«└╬╟╤┤┘
  1678. RewriteCond   %{HTTP_HOST}  !^$
  1679. #
  1680. #   3. ╚ú╜║╞«╕φ└╗ ╝╥╣«└┌╖╬ ╕╕╡τ┤┘
  1681. RewriteCond   ${lowercase:%{HTTP_HOST}|NONE}  ^(.+)$
  1682. #
  1683. #   4. vhost.map┐í╝¡ ╚ú╜║╞«╕φ└╗ ├ú░φ
  1684. #      ░µ╖╬└╧╢º╕╕ ▒Γ╛∩╟╤┤┘
  1685. #      (└º┐í╝¡ "NONE"└║ ╛╞┤╧┤┘)
  1686. RewriteCond   ${vhost:%1}  ^(/.*)$
  1687. #
  1688. #   5. ╕╢┴÷╕╖└╕╖╬ URL└╗ ╣«╝¡ └º─í╖╬ ┤δ└└╟╧░φ
  1689. #      ╖╬▒╫┐í │▓▒Γ▒Γ└º╟╪ ░í╗≤╚ú╜║╞«╕ª ▒Γ╛∩╟╪ ╡╨┤┘
  1690. RewriteRule   ^/(.*)$   %1/$1  [E=VHOST:${lowercase:%{HTTP_HOST}}]
  1691.     :
  1692. </pre></div>
  1693.         </dd>
  1694.       </dl>
  1695.  
  1696.     
  1697.  
  1698.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  1699. <div class="section">
  1700. <h2><a name="access" id="access">┴ó▒┘ ┴ª╟╤</a></h2>
  1701.  
  1702.     
  1703.  
  1704.     <h3>╖╬║┐ ╕╖▒Γ</h3>
  1705.  
  1706.       
  1707.  
  1708.       <dl>
  1709.         <dt>╗≤╚▓╝│╕φ:</dt>
  1710.  
  1711.         <dd>
  1712.           <p>╛ε╢╗░╘ ╟╧╕Θ ╞»┴ñ └Ñ░°░ú└╟ ╞Σ└╠┴÷╕ª ▒▄╛ε╕≡└╕┤┬ ▒═┬·└║
  1713.           ╖╬║┐└╗ ╕╖└╗ ╝÷ └╓│¬? "Robot Exclusion Protocol" ╟╫╕±└╗
  1714.           └·└σ╟╤ <code>/robots.txt</code> ╞─└╧└║ ║╕┼δ └╠╖▒ ╖╬║┐└╗
  1715.           ╕╖┤┬╡Ñ ├µ║╨╟╧┴÷ ╛╩┤┘.</p>
  1716.         </dd>
  1717.  
  1718.         <dt>╟╪░ß├Ñ:</dt>
  1719.  
  1720.         <dd>
  1721.           <p>(╛╞╕╢╡╡ ╡≡╖║┼Σ╕«░í ▒φ╛ε╝¡ ╖╬║┐└╠ ╡╣╛╞┤┘┤╧╕Θ ╝¡╣÷┐í
  1722.           ║╬┤π└╠ ┼½ ░µ┐∞) └Ñ░°░ú <code>/~quux/foo/arc/</code>┐í
  1723.           └╓┤┬ URL╡Θ└╗ ░┼║╬╟╧┤┬ ▒╘─ó└╗ ╗τ┐δ╟╤┤┘. ┐∞╕«┤┬ ╞»┴ñ
  1724.           ╖╬║┐└╟ ┴ó▒┘└╗ ╕╖╛╞╛▀ ╟╤┤┘. ┴∩, ╖╬║┐└╗ ╜╟╟α╟╧┤┬ ╚ú╜║╞«╕ª
  1725.           ╕╖┤┬ ░═└╕╖╬┤┬ ║╥├µ║╨╟╧╕τ, ▒╫ ╚ú╜║╞«└╟ ╗τ┐δ└┌╡╡ ╕╖╛╞╣÷╕«░╘
  1726.           ╡╚┤┘. User-Agent HTTP ╟∞┤⌡ ┴ñ║╕╡╡ ║±▒│╟╤┤┘.</p>
  1727.  
  1728. <div class="example"><pre>
  1729. RewriteCond %{HTTP_USER_AGENT}   ^<strong>NameOfBadRobot</strong>.*
  1730. RewriteCond %{REMOTE_ADDR}       ^<strong>123\.45\.67\.[8-9]</strong>$
  1731. RewriteRule ^<strong>/~quux/foo/arc/</strong>.+   -   [<strong>F</strong>]
  1732. </pre></div>
  1733.         </dd>
  1734.       </dl>
  1735.  
  1736.     
  1737.  
  1738.     <h3>▒╫╕▓ ╞█░í▒Γ ╣µ┴÷</h3>
  1739.  
  1740.       
  1741.  
  1742.       <dl>
  1743.         <dt>╗≤╚▓╝│╕φ:</dt>
  1744.  
  1745.         <dd>
  1746.           <p><code>http://www.quux-corp.de/~quux/</code>┐í └╓┤┬
  1747.           ╞Σ└╠┴÷╡Θ└╠ GIF ▒╫╕▓└╗ ╞≈╟╘╟╤┤┘░φ ░í┴ñ╟╧└┌. └╠ ▒╫╕▓└╠
  1748.           ╕┌└╓╛ε╝¡, ┤┘╕Ñ ╗τ╢≈╡Θ└╠ └┌╜┼└╟ ╞Σ└╠┴÷┐í ┴≈┴ó ╕╡┼⌐╕ª
  1749.           ░╟┤┘. ╝¡╣÷┐í ║╥╟╩┐Σ╟╤ ║╬┤π└╠ ╡╟╣╟╖╬ ╕╖░φ ╜═┤┘.</p>
  1750.         </dd>
  1751.  
  1752.         <dt>╟╪░ß├Ñ:</dt>
  1753.  
  1754.         <dd>
  1755.           <p>▒╫╕▓└╗ 100% ║╕╚ú╟╥ ╝÷┤┬ ╛°┴÷╕╕, ├╓╝╥╟╤ ║Ω╢≤┐∞└·░í
  1756.           HTTP Referer ╟∞┤⌡╕ª ║╕│╗┤┬ ░µ┐∞ ┴ª╟╤╟╥ ╝÷ └╓┤┘.</p>
  1757.  
  1758. <div class="example"><pre>
  1759. RewriteCond %{HTTP_REFERER} <strong>!^$</strong>
  1760. RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
  1761. RewriteRule <strong>.*\.gif$</strong>        -                                    [F]
  1762. </pre></div>
  1763.  
  1764. <div class="example"><pre>
  1765. RewriteCond %{HTTP_REFERER}         !^$
  1766. RewriteCond %{HTTP_REFERER}         !.*/foo-with-gif\.html$
  1767. RewriteRule <strong>^inlined-in-foo\.gif$</strong>   -                        [F]
  1768. </pre></div>
  1769.         </dd>
  1770.       </dl>
  1771.  
  1772.     
  1773.  
  1774.     <h3>╚ú╜║╞« ░┼║╬</h3>
  1775.  
  1776.       
  1777.  
  1778.       <dl>
  1779.         <dt>╗≤╚▓╝│╕φ:</dt>
  1780.  
  1781.         <dd>
  1782.           <p>╛ε╢╗░╘ ┐▄║╬┐í╝¡ ╝¡╣÷┐í ┴ó▒┘╟╥ ╝÷ ╛°┤┬ ╚ú╜║╞« ╕±╖╧└╗
  1783.           ╝│┴ñ╟╥ ╝÷ └╓│¬?</p>
  1784.         </dd>
  1785.  
  1786.         <dt>╟╪░ß├Ñ:</dt>
  1787.  
  1788.         <dd>
  1789.           <p>╛╞╞──í >= 1.3b6┐í╝¡:</p>
  1790.  
  1791. <div class="example"><pre>
  1792. RewriteEngine on
  1793. RewriteMap    hosts-deny  txt:/path/to/hosts.deny
  1794. RewriteCond   ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND} !=NOT-FOUND [OR]
  1795. RewriteCond   ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND} !=NOT-FOUND
  1796. RewriteRule   ^/.*  -  [F]
  1797. </pre></div>
  1798.  
  1799.           <p>╛╞╞──í <= 1.3b6┐í╝¡:</p>
  1800.  
  1801. <div class="example"><pre>
  1802. RewriteEngine on
  1803. RewriteMap    hosts-deny  txt:/path/to/hosts.deny
  1804. RewriteRule   ^/(.*)$ ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND}/$1
  1805. RewriteRule   !^NOT-FOUND/.* - [F]
  1806. RewriteRule   ^NOT-FOUND/(.*)$ ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND}/$1
  1807. RewriteRule   !^NOT-FOUND/.* - [F]
  1808. RewriteRule   ^NOT-FOUND/(.*)$ /$1
  1809. </pre></div>
  1810.  
  1811. <div class="example"><pre>
  1812. ##
  1813. ##  hosts.deny
  1814. ##
  1815. ##  ┴╓└╟! └╠░═└║ ╕±╖╧├│╖│ ║╕└╠┴÷╕╕ ╕±╖╧└╠ ╛╞┤╧╢≤ ╕╩└╠┤┘.
  1816. ##        mod_rewrite┤┬ └╠ ┴ñ║╕╕ª ┼░/░¬ ╜╓└╕╖╬ ╟╪╝«╟╧▒Γ╢º╣«┐í,
  1817. ##        ░ó ╟╫╕±└╟ ░¬ └┌╕«┐í ├╓╝╥╟╤ "-"░í ╟╩┐Σ╟╧┤┘.
  1818. ##
  1819.  
  1820. 193.102.180.41 -
  1821. bsdti1.sdm.de  -
  1822. 192.76.162.40  -
  1823. </pre></div>
  1824.         </dd>
  1825.       </dl>
  1826.  
  1827.     
  1828.  
  1829.     <h3>╟┴╖╧╜├ ░┼║╬</h3>
  1830.  
  1831.       
  1832.  
  1833.       <dl>
  1834.         <dt>╗≤╚▓╝│╕φ:</dt>
  1835.  
  1836.         <dd>
  1837.           <p>╛ε╢╗░╘ ╞»┴ñ ╚ú╜║╞« ╚ñ└║ ╞»┴ñ ╚ú╜║╞«└╟ ╗τ┐δ└┌░í
  1838.           ╛╞╞──í ╟┴╖╧╜├╕ª ╗τ┐δ╟╥ ╝÷ ╛°╡╡╖╧ ╟╧│¬?</p>
  1839.         </dd>
  1840.  
  1841.         <dt>╟╪░ß├Ñ:</dt>
  1842.  
  1843.         <dd>
  1844.           <p>╕╒└· ╛╞╞──í └Ñ╝¡╣÷╕ª ──╞─└╧╟╥╢º ▒╕╝║╞─└╧┐í╝¡
  1845.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>░í <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>
  1846.           ╛╞╖í┐í(!) └╓╛ε╛▀ ╟╤┤┘. ▒╫╖»╕Θ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>┤┬
  1847.           <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> <em>└╠└ⁿ┐í</em> ║╥╕░┤┘.
  1848.           └╠┴ª ┤┘└╜░· ░░└╠ ╞»┴ñ ╚ú╜║╞«╕ª ░┼║╬╟╧╡╡╖╧ ╝│┴ñ╟╤┤┘...</p>
  1849.  
  1850. <div class="example"><pre>
  1851. RewriteCond %{REMOTE_HOST} <strong>^badhost\.mydomain\.com$</strong>
  1852. RewriteRule !^http://[^/.]\.mydomain.com.*  - [F]
  1853. </pre></div>
  1854.  
  1855.           <p>...▒╫╕«░φ ┤┘└╜└║ user@host┐í ╡√╢≤ ░┼║╬╟╤┤┘:</p>
  1856.  
  1857. <div class="example"><pre>
  1858. RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST}  <strong>^badguy@badhost\.mydomain\.com$</strong>
  1859. RewriteRule !^http://[^/.]\.mydomain.com.*  - [F]
  1860. </pre></div>
  1861.         </dd>
  1862.       </dl>
  1863.  
  1864.     
  1865.  
  1866.     <h3>╞»║░╟╤ └╬┴⌡ ╣µ╜─</h3>
  1867.  
  1868.       
  1869.  
  1870.       <dl>
  1871.         <dt>╗≤╚░╝│╕φ:</dt>
  1872.  
  1873.         <dd>
  1874.           <p>░í▓√ ╕┼┐∞ ╞»║░╟╤ └╬┴⌡└╠ ╟╩┐Σ╟╥ ╢º░í └╓┤┘. ┐╣╕ª
  1875.           ╡Θ╛ε, ╣╠╕« ╝│┴ñ╟╪╡╨ ╗τ┐δ└┌└╬┴÷ ░╦╗τ╟╤┤┘. └╠╡Θ┐í░╘╕╕
  1876.           (<code class="module"><a href="../mod/mod_auth.html">mod_auth</a></code>└╟ Basic Auth╕ª ╗τ┐δ╟╤
  1877.           ░µ┐∞┐═ ┤▐╕«) ║░┤┘╕Ñ ╣░└╜╛°└╠ ┴ó▒┘└╗ ╟π┐δ╟╤┤┘.</p>
  1878.         </dd>
  1879.  
  1880.         <dt>╟╪░ß├Ñ:</dt>
  1881.  
  1882.         <dd>
  1883.           <p>─ú▒╕╕╕ ┴ó▒┘└╠ ░í┤╔╟╧╡╡╖╧ └τ└█╝║ ▒╘─ó╡Θ└╗ ╗τ┐δ╟╤┤┘:</p>
  1884.  
  1885. <div class="example"><pre>
  1886. RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend1@client1.quux-corp\.com$</strong>
  1887. RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend2</strong>@client2.quux-corp\.com$
  1888. RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend3</strong>@client3.quux-corp\.com$
  1889. RewriteRule ^/~quux/only-for-friends/      -                                 [F]
  1890. </pre></div>
  1891.         </dd>
  1892.       </dl>
  1893.  
  1894.     
  1895.  
  1896.     <h3>Referer▒Γ╣▌ ║»╚»▒Γ(deflector)</h3>
  1897.  
  1898.       
  1899.  
  1900.       <dl>
  1901.         <dt>╗≤╚▓╝│╕φ:</dt>
  1902.  
  1903.         <dd>
  1904.           <p>"Referer" HTTP ╟∞┤⌡┐í ╡√╢≤ ┐°╟╧┤┬┤δ╖╬ ┬ⁿ┴╢╞Σ└╠┴÷╕ª
  1905.           ╝│┴ñ╟╥ ╝÷ └╓┤┬ └»┐¼╟╤ URL ║»╚»▒Γ╕ª ╕╕╡Θ ╝÷ └╓┤┬░í?</p>
  1906.         </dd>
  1907.  
  1908.         <dt>╟╪░ß├Ñ:</dt>
  1909.  
  1910.         <dd>
  1911.           <p>┤┘└╜░· ░░└╠ ║╣└Γ╟╤ ▒╘─ó└╗...</p>
  1912.  
  1913. <div class="example"><pre>
  1914. RewriteMap  deflector txt:/path/to/deflector.map
  1915.  
  1916. RewriteCond %{HTTP_REFERER} !=""
  1917. RewriteCond ${deflector:%{HTTP_REFERER}} ^-$
  1918. RewriteRule ^.* %{HTTP_REFERER} [R,L]
  1919.  
  1920. RewriteCond %{HTTP_REFERER} !=""
  1921. RewriteCond ${deflector:%{HTTP_REFERER}|NOT-FOUND} !=NOT-FOUND
  1922. RewriteRule ^.* ${deflector:%{HTTP_REFERER}} [R,L]
  1923. </pre></div>
  1924.  
  1925.           <p>... └τ└█╝║ ╕╩░· ░░└╠ ╗τ┐δ╟╤┤┘:</p>
  1926.  
  1927. <div class="example"><pre>
  1928. ##
  1929. ##  deflector.map
  1930. ##
  1931.  
  1932. http://www.badguys.com/bad/index.html    -
  1933. http://www.badguys.com/bad/index2.html   -
  1934. http://www.badguys.com/bad/index3.html   http://somewhere.com/
  1935. </pre></div>
  1936.  
  1937.           <p>▒╫╖»╕Θ ┐Σ├╗└╗ └┌╡┐└╕╖╬ (╕╩┐í╝¡ ░¬└╕╖╬ "<code>-</code>"╕ª
  1938.           ╗τ┐δ╟╤ ░µ┐∞) ┬ⁿ┴╢╞Σ└╠┴÷│¬ (URL└╠ ╕╩┐í └╓┤┬ ░µ┐∞ ╡╬╣°┬░
  1939.           ╛╞▒╘╕╒╞«╖╬) ╞»┴ñ URL╖╬ ╕«┤┘└╠╖║╝╟╟╤┤┘.</p>
  1940.         </dd>
  1941.       </dl>
  1942.  
  1943.     
  1944.  
  1945.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  1946. <div class="section">
  1947. <h2><a name="other" id="other">▒Γ┼╕</a></h2>
  1948.  
  1949.     
  1950.  
  1951.     <h3>┐▄║╬ └τ└█╝║ ┐ú┴°</h3>
  1952.  
  1953.       
  1954.  
  1955.       <dl>
  1956.         <dt>╗≤╚▓╝│╕φ:</dt>
  1957.  
  1958.         <dd>
  1959.           <p>FAQ: ╛ε╢╗░╘ └╠╖▒└·╖▒ └Γ┤┘╟╤ ╣«┴ª╕ª ╟« ╝÷ └╓┤┬░í?
  1960.           <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>╖╬┤┬ ╟╪░ß├Ñ└╠ ╛╚║╕└╬┤┘...</p>
  1961.         </dd>
  1962.  
  1963.         <dt>╟╪░ß├Ñ:</dt>
  1964.  
  1965.         <dd>
  1966.           <p>┐▄║╬ <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code>└╗ ╗τ┐δ╟╧╢≤.
  1967.           ┴∩, ╟┴╖╬▒╫╖Ñ└╠ <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code> ┐¬╟╥└╗
  1968.           ╟╤┤┘. ╟┴╖╬▒╫╖Ñ└║ ╛╞╞──í░í ╜├└█╟╥╢º ╜├└█╟╧┐⌐
  1969.           <code>STDIN</code>┐í╝¡ ┐Σ├╗╟╤ URL└╗ ╣▐░φ, (░░└║ ╝°╝¡╖╬!)
  1970.           ░ß░· (║╕┼δ └τ└█╝║╡╚) URL└╗ <code>STDOUT</code>┐í ├Γ╖┬╟╤┤┘.</p>
  1971.  
  1972. <div class="example"><pre>
  1973. RewriteEngine on
  1974. RewriteMap    quux-map       <strong>prg:</strong>/path/to/map.quux.pl
  1975. RewriteRule   ^/~quux/(.*)$  /~quux/<strong>${quux-map:$1}</strong>
  1976. </pre></div>
  1977.  
  1978. <div class="example"><pre>
  1979. #!/path/to/perl
  1980.  
  1981. #   ╛╞╞──í ╝¡╣÷░í ╕╪├▀┴÷ ╛╩╡╡╖╧
  1982. #   └╘├Γ╖┬ ╣÷╞█╕ª ╗τ┐δ╟╧┴÷ ╛╩┤┬┤┘
  1983. $| = 1;
  1984.  
  1985. #   stdin┐í╝¡ ╟╤┴┘╛┐ URL└╗ └╨░φ
  1986. #   stdout┐í ║»╚»╟╤ URL└╗ ├Γ╖┬╟╤┤┘
  1987. while (<>) {
  1988.     s|^foo/|bar/|;
  1989.     print $_;
  1990. }
  1991. </pre></div>
  1992.  
  1993.           <p>╝│╕φ╟╧▒Γ└º╟╪ ╕≡╡τ <code>/~quux/foo/...</code> URL└╗
  1994.           <code>/~quux/bar/...</code>╖╬ └τ└█╝║╟╧┤┬ ╜║┼⌐╕│╞«╕ª
  1995.           ┐╣╖╬ ╡Θ╛·┤┘. ╜╟┴ª╖╬ ╕╢└╜┤δ╖╬ ╟┴╖╬▒╫╖í╣╓╟╥ ╝÷ └╓┤┘.
  1996.           ▒╫╖»│¬ └╧╣▌ ╗τ┐δ└┌░í └╠╖▒ ╕╩└╗ <strong>╗τ┐δ╟╥</strong>
  1997.           ╝÷ └╓┤┘░φ ╟╧┤⌡╢≤░φ, ┐└┴≈ ╜├╜║┼█ ░ⁿ╕«└┌╕╕└╠ ╕╩└╗
  1998.           <strong>┴ñ└╟╟╪╛▀</strong> ╟╘└╗ ┴╓└╟╟╧╢≤.</p>
  1999.         </dd>
  2000.       </dl>
  2001.  
  2002.     
  2003.  
  2004.   </div></div>
  2005. <div class="bottomlang">
  2006. <p><span>░í┤╔╟╤ ╛≡╛ε: </span><a href="../en/misc/rewriteguide.html" hreflang="en" rel="alternate" title="English"> en </a> |
  2007. <a href="../ko/misc/rewriteguide.html" title="Korean"> ko </a></p>
  2008. </div><div id="footer">
  2009. <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>
  2010. <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>
  2011. </body></html>