<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
<!-- English Revision: 106090:602174 (outdated) -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<manualpage metafile="rewriteguide.xml.meta">
  <parentdocument href="./">Miscellaneous Documentation</parentdocument>

  <title>URL ÀçÀÛ¼º ÁöÄ§¼­</title>

  <summary>
    <note>
      <p>¿øÀúÀÚ<br />
      <cite>Ralf S. Engelschall &lt;rse@apache.org&gt;</cite><br />
      1997³â 12¿ù</p>
    </note>

    <p>ÀÌ ¹®¼­´Â <module>mod_rewrite</module> <a
    href="../mod/mod_rewrite.html">ÂüÁ¶ ¹®¼­</a>¸¦ º¸ÃæÇÑ´Ù.
    ÀÌ ¹®¼­´Â À¥°ü¸®ÀÚ°¡ ½ÇÁ¦ ÀÛ¾÷¿¡¼­ ºÎµúÄ¡°ÔµÇ´Â ÀüÇüÀûÀÎ
    URL°ü·Ã ¹®Á¦¸¦ ÇØ°áÇÏ±âÀ§ÇØ¼­ ¾î¶»°Ô ¾ÆÆÄÄ¡
    <module>mod_rewrite</module>¸¦ »ç¿ëÇÏ´ÂÁö ¼³¸íÇÑ´Ù. URL
    ÀçÀÛ¼º ±ÔÄ¢À» ¼³Á¤ÇÏ¿© ¹®Á¦¸¦ ÇØ°áÇÏ´Â ¹æ¹ýÀ» ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.</p>

  </summary>

  <section id="ToC1">

    <title><code>mod_rewrite</code> ¼Ò°³</title>

    <p>¾ÆÆÄÄ¡ <module>mod_rewrite</module> ¸ðµâÀº ±²ÀåÇÏ´Ù.
    Áï, URLÀ» Á¶ÀÛÇÒ ¼ö ÀÖ´Â °­·ÂÇÏ°í ½Ç·Î Á¤±³ÇÑ ¸ðµâÀÌ´Ù.
    »ó»óÇØ¿Ô´ø °ÅÀÇ ¸ðµç Á¾·ùÀÇ URL Á¶ÀÛÀÌ °¡´ÉÇÏ´Ù. ±×·¯³ª
    ±× ´ë°¡·Î »ç¿ëÇÏ±â º¹ÀâÇÏ´Ù. <module>mod_rewrite</module>ÀÇ
    ÃÖ´ë ´ÜÁ¡Àº ÃÊº¸ÀÚ°¡ ÀÌÇØÇÏ°í »ç¿ëÇÏ±â ½±Áö ¾Ê´Ù´Â Á¡ÀÌ´Ù.
    ½ÉÁö¾î ¾ÆÆÄÄ¡ Àü¹®°¡µµ Á¾Á¾ <module>mod_rewrite</module>ÀÇ
    »õ·Î¿î ¿ëµµ¸¦ ¹ß°ßÇÑ´Ù.</p>

    <p>´Ù¸¥ ¸»·Î: <module>mod_rewrite</module>¿¡ ´ëÇØ ´ç½ÅÀº
    Ã³À½¿¡ °ÌÀ» ¸Ô°í Àý´ë·Î ´Ù½Ã »ç¿ëÇÏÁö ¾Ê°Å³ª, °­·ÂÇÔ¿¡ ¸Å·áµÇ¾î
    ¾ÕÀ¸·Î »î µ¿¾È »ç¶û¿¡ ºüÁú °ÍÀÌ´Ù. ÀÌ ±ÛÀº Ã¹¹øÂ° °æ¿ì¸¦
    ¸·±âÀ§ÇØ ÀÌ¹Ì ¾Ë·ÁÁø ¸î°¡Áö ¼º°ø»ç·Ê¸¦ ¼Ò°³ÇÏ·Á°í ÇÑ´Ù.</p>

  </section>

  <section id="ToC2">

    <title>½Ç¿ëÀûÀÎ ÇØ°áÃ¥</title>

    <p>ÀÌÁ¦ ³»°¡ Á÷Á¢ ¸¸µé¾ú°Å³ª ´Ù¸¥ »ç¶÷µéÀÌ ¸¸µç ¸¹Àº ½Ç¿ëÀûÀÎ
    ÇØ°áÃ¥ÀÌ ³ª¿Â´Ù. ¿¹Á¦¿¡¼­ URL ÀçÀÛ¼ºÀÇ Èæ¸¶¼úÀ» ¸¶À½²¯ ¹è¿ì±æ
    ¹Ù¶õ´Ù.</p>

    <note type="warning">ÁÖÀÇ: ¼­¹ö ¼³Á¤¿¡ µû¶ó »óÈ²¿¡ ¸Â°Ô
    ¿¹Á¦¸¦ Á¶±Ý ¼öÁ¤ÇØ¾ß ÇÒ °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î, Ãß°¡·Î
    <module>mod_alias</module>, <module>mod_userdir</module>
    µîÀ» »ç¿ëÇÑ´Ù¸é <code>[PT]</code> ÇÃ·¡±×¸¦ Ãß°¡ÇÑ´Ù. È¤Àº
    ÁÖ¼­¹ö¼³Á¤/°¡»óÈ£½ºÆ® »ç¿ëÀå¼Ò°¡ ¾Æ´Ñ <code>.htaccess</code>
    »ç¿ëÀå¼Ò¿¡ ¾Ë¸Â°Ô ±ÔÄ¢À» ¼öÁ¤ÇÒ ¼öµµ ÀÖ´Ù. »ç¿ëÇÏ±â Àü¿¡
    Ç×»ó ±ÔÄ¢ÀÌ ¾î¶² ±â´ÉÀ» ÇÏ´ÂÁö ÀÌÇØÇÏµµ·Ï ÇØ¶ó. ±×·¯¸é ¹®Á¦¸¦
    ÇÇÇÒ ¼ö ÀÖ´Ù.</note>

  </section>

  <section id="url">

    <title>URL ±¸Á¶</title>

    <section>

      <title>±âÁØÀÌ µÇ´Â URL</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÇÑ ¸®¼Ò½º¿¡ ´ëÇØ ¿©·¯ URLÀ» °¡Áö´Â À¥¼­¹ö°¡ ÀÖ´Ù.
          º¸Åë (½ÇÁ¦ »ç¿ëÇÏ°í ¾Ë·ÁÁ®¾ß ÇÒ) ±âÁØÀÌ µÇ´Â URL°ú,
          ´ÜÃà È¤Àº ³»ºÎ ¿ëµµÀÇ URLÀÌ ÀÖ´Ù. »ç¿ëÀÚ°¡ ¿äÃ»¿¡
          ¾î¶² URLÀ» »ç¿ëÇÏ´øÁö ±âÁØÀÌ µÇ´Â URL¸¸À» º¸¿©Áà¾ß
          ÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>±âÁØÀÌ µÇÁö¾Ê´Â ¸ðµç URLÀ» ºê¶ó¿ìÀú°¡ ¾Ëµµ·Ï °íÄ¡±âÀ§ÇØ
          ¿ÜºÎ HTTP ¸®´ÙÀÌ·º¼ÇÇÑ´Ù. ¿¹¸¦ µé¾î ¾Æ·¡ ±ÔÄ¢Àº
          <code>/~user</code>¸¦ ±âÁØÀÌ µÇ´Â <code>/u/user</code>·Î
          ´ëÃ¼ÇÏ°í, <code>/u/user</code> ¸¶Áö¸·¿¡ ½½·¡½¬°¡ ¾ø´Ù¸é
          Ãß°¡ÇÑ´Ù.</p>

<example><pre>
RewriteRule   ^/<strong>~</strong>([^/]+)/?(.*)    /<strong>u</strong>/$1/$2  [<strong>R</strong>]
RewriteRule   ^/([uge])/(<strong>[^/]+</strong>)$  /$1/$2<strong>/</strong>   [<strong>R</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>±âÁØÀÌ µÇ´Â È£½ºÆ®¸í</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>ÀÌ ±ÔÄ¢Àº µ¿ÀÏÇÑ »çÀÌÆ®¿¡ µµ´ÞÇÒ ¼ö ÀÖ´Â ´Ù¸¥ È£½ºÆ®¸í
        ´ë½Å Æ¯Á¤ È£½ºÆ®¸íÀ» »ç¿ëÇÏµµ·Ï °­Á¦ÇÑ´Ù. ¿¹¸¦ µé¾î,
        <strong>example.com</strong> ´ë½Å
        <strong>www.example.com</strong>À» »ç¿ëÇÏµµ·Ï °­Á¦ÇÏ°í
        ½Í´Ù¸é ´ÙÀ½°ú °°Àº ±ÔÄ¢À» »ç¿ëÇÒ ¼ö ÀÖ´Ù.</dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
<example><pre>
# 80¹øÀÌ ¾Æ´Ñ Æ÷Æ®¿¡¼­ ½ÇÇàÇÏ´Â »çÀÌÆ®¿ë
RewriteCond %{HTTP_HOST}   !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*)         http://fully.qualified.domain.name:%{SERVER_PORT}/$1 [L,R]

# ±×¸®°í, 80¹ø Æ÷Æ®¿¡¼­ ½ÇÇàÇÏ´Â »çÀÌÆ®¿ë
RewriteCond %{HTTP_HOST}   !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/(.*)         http://fully.qualified.domain.name/$1 [L,R]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title><code>DocumentRoot</code>¸¦ ¿Å±ä °æ¿ì</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>À¥¼­¹öÀÇ <directive
          module="core">DocumentRoot</directive>´Â º¸Åë URL
          "<code>/</code>"°ú Á÷Á¢ °ü·ÃÀÖ´Ù. ±×·¯³ª ÀÌ°÷¿¡ ¸ðµç
          ÀÚ·á°¡ ÀÖÁö ¾Ê°í, ÀÚ·á°¡ ´Ù¸¥ ¿©·¯ °÷¿¡ Èð¾îÁ®ÀÖ´Â
          °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î ÀÎÆ®¶ó³Ý »çÀÌÆ®¿¡ (¿ÜºÎ¸¦ À§ÇÑ
          È¨ÆäÀÌÁö) <code>/e/www/</code>¿Í (ÀÎÆ®¶ó³ÝÀ» À§ÇÑ
          È¨ÆäÀÌÁö) <code>/e/sww/</code>°¡ ÀÖ´Ù°í ÇÏÀÚ. ÀÌÁ¦
          <directive module="core">DocumentRoot</directive>°¡
          <code>/e/www/</code>ÀÌ±â¶§¹®¿¡, ¿äÃ»¿¡¼­ ÆäÀÌÁö¿¡
          Æ÷ÇÔµÈ ±×¸² µîÀ» ÀÌ°÷¿¡¼­ °¡Á®¿Í¾ß ÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¿ì¸®´Â URL <code>/</code>¸¦ <code>/e/www/</code>·Î
          ¸®´ÙÀÌ·º¼Ç¸¸ ÇÏ¸é µÈ´Ù. »ç¼ÒÇØ º¸ÀÌÁö¸¸ ½ÇÁ¦·Î
          <module>mod_rewrite</module>¸¦ »ç¿ëÇØ¼­¸¸ °¡´ÉÇÏ´Ù.
          (<module>mod_alias</module> µîÀÌ Á¦°øÇÏ´Â) URL
          <em>Alias</em> °°Àº ÀüÇüÀûÀÎ ¹æ¹ýÀº <em>¾ÕºÎºÐ</em>¸¸
          Ã£´Â´Ù. <directive module="core">DocumentRoot</directive>°¡
          ¸ðµç URLÀÇ ¾ÕºÎºÐÀÌ±â¶§¹®¿¡ ÀÌ ¹æ¹ýÀ» »ç¿ëÇÏ¿© ¸®´ÙÀÌ·º¼ÇÀ»
          ÇÒ ¼ö ¾ø´Ù. <module>mod_rewrite</module>¸¦ »ç¿ëÇÏ¸é
          ÁøÂ¥ °£´ÜÇÏ´Ù:</p>

<example><pre>
RewriteEngine on
RewriteRule   <strong>^/$</strong>  /e/www/  [<strong>R</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>¸¶Áö¸· ½½·¡½¬ ¹®Á¦</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>µð·ºÅä¸®¸¦ ÁöÄªÇÏ´Â URLÀÇ ¸¶Áö¸· ½½·¡½¬ ¹®Á¦°¡
          ¾ø´Ù¸é ¸ðµç À¥°ü¸®ÀÚ´Â È¯È£ÇÒ °ÍÀÌ´Ù. ½½·¡½¬°¡ ¾ø´Ù¸é,
          Áï <code>/~quux/foo/</code> ´ë½Å <code>/~quux/foo</code>¸¦
          »ç¿ëÇÏ¸é ¼­¹ö°¡ <code>foo</code>¶ó´Â <em>ÆÄÀÏ</em>À»
          Ã£±â¶§¹®¿¡ ¿À·ù°¡ ¹ß»ýÇÑ´Ù. ÆÄÀÏÀÌ µð·ºÅä¸®ÀÌ±â¶§¹®¿¡
          ¹Þ¾ÆµéÀÌÁö ¾Ê´Â´Ù. ´ëºÎºÐÀÇ °æ¿ì º¸Åë ¼­¹ö°¡ ÀÚµ¿À¸·Î
          URLÀ» °íÄ¡Áö¸¸, °¡²û Á÷Á¢ ÇØÁà¾ß ÇÒ °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦
          µé¾î, CGI ½ºÅ©¸³Æ® µîÀ¸·Î º¹ÀâÇÑ URL ÀçÀÛ¼ºÀ» ÇÑ ÈÄ¿¡
          ±×·¯ÇÏ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀÌ ¹Ì¹¦ÇÑ ¹®Á¦ÀÇ ÇØ°á¹æ¹ýÀº ¼­¹ö°¡ ÀÚµ¿À¸·Î ¸¶Áö¸·
          ½½·¡½¬¸¦ Ãß°¡ÇÏ´Â °ÍÀÌ´Ù. ºê¶ó¿ìÀú°¡ ³ª¸ÓÁö ±×¸² µîÀ»
          ¿Ã¹Ù·Î ¿äÃ»ÇÒ ¼ö ÀÖµµ·Ï, ¿ÜºÎ ¸®´ÙÀÌ·º¼ÇÀ» ÇØ¾ß ÇÑ´Ù.
          ³»ºÎ ¸®´ÙÀÌ·º¼ÇÀ» ÇÑ´Ù¸é µð·ºÅä¸® ÆäÀÌÁö¿¡¸¸ µ¿ÀÛÇÏ¿©
          ÀÌ ÆäÀÌÁö°¡ »ó´ë URL·Î Æ÷ÇÔÇÏ´Â ±×¸²À» ºê¶ó¿ìÀú°¡
          ¿äÃ»ÇÒ¶§ Ã£À» ¼ö ¾ø´Ù. ¿¹¸¦ µé¾î, ¿ÜºÎ ¸®´ÙÀÌ·º¼ÇÀ»
          »ç¿ëÇÏÁö ¾ÊÀ»¶§ <code>/~quux/foo/index.html</code>¿¡¼­
          <code>image.gif</code>¸¦ ¿äÃ»ÇÏ¸é
          <code>/~quux/image.gif</code>¸¦ ¿äÃ»ÇÏ°Ô µÈ´Ù!</p>

          <p>±×·¡¼­ ÀÌ¸¦ ÇØ°áÇÏ±âÀ§ÇØ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù:</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^foo<strong>$</strong>  foo<strong>/</strong>  [<strong>R</strong>]
</pre></example>

          <p>È¨µð·ºÅä¸®ÀÇ ÃÖ»óÀ§ <code>.htaccess</code> ÆÄÀÏ¿¡
          ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÒ ¼öµµ ÀÖ´Ù. ±×·¯³ª Ã³¸®ÇÏ´Âµ¥ ºÎ´ãÀÌ
          µÈ´Ù.</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteCond    %{REQUEST_FILENAME}  <strong>-d</strong>
RewriteRule    ^(.+<strong>[^/]</strong>)$           $1<strong>/</strong>  [R]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>ÀÏ°üµÈ URL ±¸Á¶·Î ¸¸µç À¥Å¬·¯½ºÅÍ</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÀÎÆ®¶ó³Ý À¥¼­¹ö±ºÀÇ ¸ðµç À¥¼­¹ö¿¡ µ¿ÀÏÇÏ°í ÀÏ°üµÈ
          URL ±¸Á¶¸¦ ¸¸µé°í ½Í´Ù. Áï, ¸ðµç (Á¤ÀÇ»ó ¼­¹ö¿¡ ¼ÓÇÏ¿©
          ¼­¹ö¿¡ ÀÇÁ¸ÀûÀÎ!) URLÀ» ¼­¹ö <em>µ¶¸³ÀûÀ¸·Î</em> ¸¸µç´Ù!
          À¥ ÀÌ¸§°ø°£¿¡ ¼­¹öµ¶¸³ÀûÀÎ µ¿ÀÏÇÑ ±¸Á¶¸¦ ºÎ¿©ÇØ¾ß ÇÑ´Ù:
          URLÀº ½ÇÁ¦ ¼­¹ö¸¦ ÁöÄªÇÏ¸é ¾ÈµÈ´Ù. ¼­¹ö±ºÀÌ ÀÚµ¿À¸·Î
          ½ÇÁ¦ ¼­¹ö·Î À¯µµÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸ÕÀú »ç¿ëÀÚ, ±×·ì, µ¶¸³Ã¼ÀÇ À§Ä¡ Á¤º¸¸¦ ÀúÀåÇÑ
          (ºÐ»êµÈ) ¿ÜºÎ¸Ê¿¡ ½ÇÁ¦ ¼­¹ö Á¤º¸¸¦ ¾ò¾î¿Â´Ù. ¿ÜºÎ¸ÊÀº
          ´ÙÀ½°ú °°Àº Çü½ÄÀÌ´Ù</p>

<example><pre>
user1  server_of_user1
user2  server_of_user2
:      :
</pre></example>

          <p>¿ì¸®´Â ÀÌ Á¤º¸¸¦ °¢°¢ <code>map.xxx-to-host</code>
          ÆÄÀÏ¿¡ ÀúÀåÇß´Ù. ´ÙÀ½À¸·Î ¸ðµç ¼­¹ö¿¡¼­ URLÀÌ ¼­¹ö¿¡
          ¾ø´Ù¸é ´ÙÀ½°ú °°Àº URLÀ»,</p>

<example><pre>
/u/user/anypath
/g/group/anypath
/e/entity/anypath
</pre></example>

          <p>´ÙÀ½°ú °°ÀÌ ¸®´ÙÀÌ·º¼ÇÇÑ´Ù</p>

<example><pre>
http://physical-host/u/user/anypath
http://physical-host/g/group/anypath
http://physical-host/e/entity/anypath
</pre></example>

          <p>¾Æ·¡ ±ÔÄ¢Àº ¸ÊÆÄÀÏÀ» »ç¿ëÇÏ¿© ÀÌ ÀÛ¾÷À» ÇÑ´Ù (server0Àº
          ¸Ê¿¡ Ç×¸ñÀÌ ¾ø´Â °æ¿ì »ç¿ëÇÒ ±âº»¼­¹ö¶ó°í °¡Á¤ÇÑ´Ù):</p>

<example><pre>
RewriteEngine on

RewriteMap      user-to-host   txt:/path/to/map.user-to-host
RewriteMap     group-to-host   txt:/path/to/map.group-to-host
RewriteMap    entity-to-host   txt:/path/to/map.entity-to-host

RewriteRule   ^/u/<strong>([^/]+)</strong>/?(.*)   http://<strong>${user-to-host:$1|server0}</strong>/u/$1/$2
RewriteRule   ^/g/<strong>([^/]+)</strong>/?(.*)  http://<strong>${group-to-host:$1|server0}</strong>/g/$1/$2
RewriteRule   ^/e/<strong>([^/]+)</strong>/?(.*) http://<strong>${entity-to-host:$1|server0}</strong>/e/$1/$2

RewriteRule   ^/([uge])/([^/]+)/?$          /$1/$2/.www/
RewriteRule   ^/([uge])/([^/]+)/([^.]+.+)   /$1/$2/.www/$3\
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>È¨µð·ºÅä¸®¸¦ ´Ù¸¥ À¥¼­¹ö·Î ÀÌÀü</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¸¹Àº À¥°ü¸®ÀÚ´Â À¥¼­¹öÀÇ ¸ðµç È¨µð·ºÅä¸®¸¦ ´Ù¸¥
          À¥¼­¹ö·Î ÀÌÀüÇÑ °æ¿ì ÇØ°áÃ¥À» ¹°¾îº»´Ù. ÀÌ ¹æ¹ýÀº
          ÀÌÀü ¼­¹ö¸¦ ´ëÃ¼ÇÒ »õ·Î¿î ¼­¹ö¸¦ ±¸¼ºÇÏ´Âµ¥ ½Ã°£ÀÌ
          °É¸®´Â °æ¿ì¿¡ ÇÊ¿äÇÏ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p><module>mod_rewrite</module>¸¦ »ç¿ëÇÏ¸é °£´ÜÇÏ´Ù.
          ÀÌÀü À¥¼­¹ö´Â ¸ðµç <code>/~user/anypath</code> URLÀ»
          <code>http://newserver/~user/anypath</code>·Î
          ¸®´ÙÀÌ·º¼ÇÇÏ¸é µÈ´Ù.</p>

<example><pre>
RewriteEngine on
RewriteRule   ^/~(.+)  http://<strong>newserver</strong>/~$1  [R,L]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>È¨µð·ºÅä¸® ±¸Á¶ ¸¸µé±â</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>»ç¿ëÀÚ°¡ ¼öÃµ¸íÀÎ »çÀÌÆ®´Â º¸Åë È¨µð·ºÅä¸® ±¸Á¶¸¦
          ¸¸µç´Ù. Áï, ¿¹¸¦ µé¾î ÀÌ¸§ÀÌ »ç¿ëÀÚ¸íÀÇ Ã¹¹øÂ° ¹®ÀÚÀÎ
          ÇÏÀ§µð·ºÅä¸®¿¡ È¨µð·ºÅä¸®¸¦ µÐ´Ù. ±×·¡¼­,
          <code>/~foo/anypath</code>´Â
          <code>/home/<strong>f</strong>/foo/.www/anypath</code>ÀÌ°í,
          <code>/~bar/anypath</code>´Â
          <code>/home/<strong>b</strong>/bar/.www/anypath</code>ÀÌ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¹°°áÇ¥½Ã°¡ ÀÖ´Â URLÀ» À§¿Í °°Àº ±¸Á¶·Î º¯È¯ÇÏ±âÀ§ÇØ
          ´ÙÀ½ ±ÔÄ¢À» »ç¿ëÇÑ´Ù.</p>

<example><pre>
RewriteEngine on
RewriteRule   ^/~(<strong>([a-z])</strong>[a-z0-9]+)(.*)  /home/<strong>$2</strong>/$1/.www$3
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>ÆÄÀÏ½Ã½ºÅÛ Àç±¸¼º</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÀÌ ¿¹´Â ½Ç·Î ÇÏµåÄÚ¾îÀûÀÌ´Ù: µð·ºÅä¸®º°
          <code>RewriteRules</code>¸¦ ¸Å¿ì ¸¹ÀÌ »ç¿ëÇÏ¿© ÀÚ·á
          ÀÚÃ¼´Â ±×´ë·Î µÐÃ¼·Î À¥¿¡ ÀÚ·á¸¦ ÀÚ¿¬½º·´°Ô ºê¶ó¿ìÂ¡ÇÏµµ·Ï
          ÇÑ´Ù. ¹è°æ: ³ª´Â 1992³â ºÎÅÍ ÀÚÀ¯·Ó°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â
          À¯´Ð½º ¼ÒÇÁÆ®¿þ¾îµéÀ» <strong><em>net.sw</em></strong>¿¡
          ¸ð¾ÆµÎ°í ÀÖ¾ú´Ù. ÀÌ´Â ³»°¡ ÄÄÇ»ÅÍ°úÇÐÀ» °øºÎÇÏ¸é¼­
          ¿©·¯ÇØµ¿¾È ¿©°¡½Ã°£¿¡ ½Ã½ºÅÛ °ü¸®ÀÚ¿Í ³×Æ®¿÷ °ü¸®ÀÚ¸¦
          ÇØ¿Ô±â¶§¹®¿¡ ³» Ãë¹ÌÀÌÀÚ ÀÏÀÌ´Ù. ¸ÅÁÖ¸¶´Ù »õ·Î ¼ÒÇÁÆ®¿þ¾î°¡
          Ãß°¡µÉ ¶§¸¶´Ù µð·ºÅä¸®¸¦ ±í°Ô ¸¸µé¾î¿Ô´Ù:</p>

<example><pre>
drwxrwxr-x   2 netsw  users    512 Aug  3 18:39 Audio/
drwxrwxr-x   2 netsw  users    512 Jul  9 14:37 Benchmark/
drwxrwxr-x  12 netsw  users    512 Jul  9 00:34 Crypto/
drwxrwxr-x   5 netsw  users    512 Jul  9 00:41 Database/
drwxrwxr-x   4 netsw  users    512 Jul 30 19:25 Dicts/
drwxrwxr-x  10 netsw  users    512 Jul  9 01:54 Graphic/
drwxrwxr-x   5 netsw  users    512 Jul  9 01:58 Hackers/
drwxrwxr-x   8 netsw  users    512 Jul  9 03:19 InfoSys/
drwxrwxr-x   3 netsw  users    512 Jul  9 03:21 Math/
drwxrwxr-x   3 netsw  users    512 Jul  9 03:24 Misc/
drwxrwxr-x   9 netsw  users    512 Aug  1 16:33 Network/
drwxrwxr-x   2 netsw  users    512 Jul  9 05:53 Office/
drwxrwxr-x   7 netsw  users    512 Jul  9 09:24 SoftEng/
drwxrwxr-x   7 netsw  users    512 Jul  9 12:17 System/
drwxrwxr-x  12 netsw  users    512 Aug  3 20:15 Typesetting/
drwxrwxr-x  10 netsw  users    512 Jul  9 14:08 X11/
</pre></example>

          <p>1996³â 7¿ù ÀÌ ÀúÀå¼Ò¸¦ ¸ÚÀÖ´Â À¥ ÀÎÅÍÆäÀÌ½º¸¦ ÅëÇØ
          ¼¼»ó¿¡ °ø°³ÇÏ±â·Î °áÁ¤ÇÞ´Ù. "¸ÚÀÖ´Ù"´Â ¸»Àº, ÃÖ»óÀ§
          µð·ºÅä¸®¿¡ CGI ½ºÅ©¸³Æ®¸¦ µÎÁö ¾Ê°íµµ, ÀúÀå¼Ò °èÃþ±¸Á¶¸¦
          Á÷Á¢ ºê¶ó¿ìÁúÇÏ±æ ¹Ù¶õ´Ù´Â ¶æÀÌ´Ù. ¿Ö? ÀúÀå¼Ò¸¦ ³ªÁß¿¡
          FTP·Îµµ Á¢±ÙÇÒ ¼ö ÀÖµµ·Ï ¸¸µé ¿¹Á¤ÀÌ¿´±â¶§¹®¿¡ À¥ÀÌ³ª
          CGI¿Í °ü·ÃµÈ ³»¿ëÀ» °°ÀÌ µÎ±â ½È¾ú´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÇØ°áÃ¥Àº µÎ ºÎºÐÀ¸·Î ³ª´¶´Ù: ¸ÕÀú µð·ºÅä¸® ¼öÁØ¿¡¼­
          ÇÊ¿äÇÑ ¸ðµç ÆäÀÌÁö¸¦ µ¿ÀûÀ¸·Î ¸¸µå´Â CGI ½ºÅ©¸³Æ®°¡
          ÇÊ¿äÇÏ´Ù. ³ª´Â ÀÌ ½ºÅ©¸³Æ®µéÀ» ´ÙÀ½°ú °°ÀÌ
          <code>/e/netsw/.www/</code>¿¡ µÎ¾ú´Ù:</p>

<example><pre>
-rw-r--r--   1 netsw  users    1318 Aug  1 18:10 .wwwacl
drwxr-xr-x  18 netsw  users     512 Aug  5 15:51 DATA/
-rw-rw-rw-   1 netsw  users  372982 Aug  5 16:35 LOGFILE
-rw-r--r--   1 netsw  users     659 Aug  4 09:27 TODO
-rw-r--r--   1 netsw  users    5697 Aug  1 18:01 netsw-about.html
-rwxr-xr-x   1 netsw  users     579 Aug  2 10:33 netsw-access.pl
-rwxr-xr-x   1 netsw  users    1532 Aug  1 17:35 netsw-changes.cgi
-rwxr-xr-x   1 netsw  users    2866 Aug  5 14:49 netsw-home.cgi
drwxr-xr-x   2 netsw  users     512 Jul  8 23:47 netsw-img/
-rwxr-xr-x   1 netsw  users   24050 Aug  5 15:49 netsw-lsdir.cgi
-rwxr-xr-x   1 netsw  users    1589 Aug  3 18:43 netsw-search.cgi
-rwxr-xr-x   1 netsw  users    1885 Aug  1 17:41 netsw-tree.cgi
-rw-r--r--   1 netsw  users     234 Jul 30 16:35 netsw-unlimit.lst
</pre></example>

          <p><code>DATA/</code> ÇÏÀ§µð·ºÅä¸®¿¡ À§¿¡¼­ ¸»ÇÑ ÀúÀå¼Ò°¡
          ÀÖ´Ù. ½ÇÁ¦ <strong><em>net.sw</em></strong>ÀÇ ³»¿ëÀº º¸Åë
          <code>rdist</code>¸¦ »ç¿ëÇÏ¿© ÀÚµ¿À¸·Î °¡Á®¿Â´Ù. µÎ¹øÂ°
          ºÎºÐÀÌ ³²¾Ò´Ù: ¾î¶»°Ô ÀÌ µÎ ±¸Á¶¸¦ ÇÏ³ªÀÇ ÀÚ¿¬½º·¯¿î
          URL ±¸Á¶·Î ¿¬°áÇÏ´Â°¡? »ç¿ëÀÚ¿¡°Ô <code>DATA/</code>
          µð·ºÅä¸®¸¦ °¨Ãß°í, URL¸¶´Ù ÀûÀýÇÑ CGI ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ°í
          ½Í´Ù. ÇØ°áÃ¥Àº ´ÙÀ½°ú °°´Ù: ¸ÕÀú ¼­¹öÀÇ <directive
          module="core">DocumentRoot</directive>¿¡¼­ °ø°³µÈ
          URL <code>/net.sw/</code>¸¦ ³»ºÎ °æ·Î <code>/e/netsw</code>·Î
          ÀçÀÛ¼ºÇÏ±âÀ§ÇØ µð·ºÅä¸®º° ¼³Á¤ÆÄÀÏ¿¡ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù:</p>

<example><pre>
RewriteRule  ^net.sw$       net.sw/        [R]
RewriteRule  ^net.sw/(.*)$  e/netsw/$1
</pre></example>

          <p>Ã¹¹øÂ° ±ÔÄ¢Àº ¸¶Áö¸·¿¡ ½½·¡½¬°¡ ¾ø´Â ¿äÃ»À» À§ÇØ¼­
          »ç¿ëÇß´Ù! µÎ¹øÂ° ±ÔÄ¢ÀÌ ½ÇÁ¦ ÀÛ¾÷À» ÇÑ´Ù. ±×¸®°í µð·ºÅä¸®º°
          ¼³Á¤ÆÄÀÏ <code>/e/netsw/.www/.wwwacl</code>¿¡ °áÁ¤ÀûÀÎ
          ¼³Á¤ÀÌ ³ª¿Â´Ù:</p>

<example><pre>
Options       ExecCGI FollowSymLinks Includes MultiViews

RewriteEngine on

#  ¾Õ ºÎºÐÀÌ /net.sw/ ·Î Á¢±ÙÇÑ´Ù
RewriteBase   /net.sw/

#  ¸ÕÀú ÃÖ»óÀ§ µð·ºÅä¸®¸¦
#  cgi ½ºÅ©¸³Æ®·Î ÀçÀÛ¼ºÇÑ´Ù
RewriteRule   ^$                       netsw-home.cgi     [L]
RewriteRule   ^index\.html$            netsw-home.cgi     [L]

#  ºê¶ó¿ìÀú°¡ µð·ºÅä¸®º° ÆäÀÌÁö¸¦ ¿äÃ»ÇÑ °æ¿ì
#  ÇÏÀ§µð·ºÅä¸®¸¦ ÃßÃâÇÑ´Ù
RewriteRule   ^.+/(netsw-[^/]+/.+)$    $1                 [L]

#  ÀÌÁ¦ ÀçÀÛ¼ºÀ» ¸¶Ä£´Ù
RewriteRule   ^netsw-home\.cgi.*       -                  [L]
RewriteRule   ^netsw-changes\.cgi.*    -                  [L]
RewriteRule   ^netsw-search\.cgi.*     -                  [L]
RewriteRule   ^netsw-tree\.cgi$        -                  [L]
RewriteRule   ^netsw-about\.html$      -                  [L]
RewriteRule   ^netsw-img/.*$           -                  [L]

#  ´Ù¸¥ cgi ½ºÅ©¸³Æ®°¡ Ã³¸®ÇÒ
#  ÇÏÀ§µð·ºÅä¸®°¡ ³²¾Ò´Ù
RewriteRule   !^netsw-lsdir\.cgi.*     -                  [C]
RewriteRule   (.*)                     netsw-lsdir.cgi/$1
</pre></example>

          <p>ÇØ¼®À» À§ÇÑ ÈùÆ®:</p>

          <ol>
            <li>³×¹øÂ° ºÎºÐ¿¡¼­ ´ëÃ¼ ÇÊµå('<code>-</code>')°¡
            ¾ø°í <code>L</code> (last) ÇÃ·¡±×°¡ ÀÖÀ½À» ÁÖ¸ñÇÏ¶ó</li>

            <li>¸¶Áö¸· ºÎºÐ¿¡¼­ Ã¹¹øÂ° ±ÔÄ¢¿¡ <code>!</code>
            (not) ¹®ÀÚ¿Í <code>C</code> (chain) ÇÃ·¡±×¸¦ ÁÖ¸ñÇÏ¶ó</li>

            <li>¸¶Áö¸· ±ÔÄ¢¿¡¼­ ±âÅ¸ ÇØ´çÇÏÁö ¾Ê´Â ¸ðµç °æ¿ì¸¦
            Àâ¾Æ³»´Â ÆÐÅÏÀ» ÁÖ¸ñÇÏ¶ó</li>
          </ol>
        </dd>
      </dl>

    </section>

    <section>

      <title>NCSA imagemapÀ» ¾ÆÆÄÄ¡ <code>mod_imap</code>À¸·Î</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>»ç¶÷µéÀº NCSA À¥¼­¹ö¿¡¼­ Çö´ëÀûÀÎ ¾ÆÆÄÄ¡ À¥¼­¹ö·Î
          ÀÚ¿¬½º·´°Ô ¿Å°Ü°¡±æ ¹Ù¶õ´Ù. ±×·¡¼­ ¿À·¡µÈ NCSA
          <code>imagemap</code> ÇÁ·Î±×·¥À» »ç¿ëÇÑ ÆäÀÌÁö¸¦ Çö´ëÀûÀÎ
          ¾ÆÆÄÄ¡ <module>mod_imap</module>·Î Ã³¸®ÇÏ±æ ¹Ù¶õ´Ù.
          ¹®Á¦´Â <code>imagemap</code> ÇÁ·Î±×·¥À»
          <code>/cgi-bin/imagemap/path/to/page.map</code>°ú
          °°ÀÌ ÂüÁ¶ÇÏ´Â ÇÏÀÌÆÛ¸µÅ©°¡ ¸¹´Ù´Â °ÍÀÌ´Ù. ¾ÆÆÄÄ¡´Â
          <code>/path/to/page.map</code>°ú °°Àº ¿äÃ»À» ¹Þ¾Æ¾ß
          ÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸ðµç ¿äÃ»¿¡¼­ ¾ÕºÎºÐÀ» µ¿ÀûÀ¸·Î Á¦°ÅÇÏ´Â Àü¿ª ±ÔÄ¢À»
          »ç¿ëÇÑ´Ù:</p>

<example><pre>
RewriteEngine  on
RewriteRule    ^/cgi-bin/imagemap(.*)  $1  [PT]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>¿©·¯ µð·ºÅä¸®¿¡¼­ ÆäÀÌÁö °Ë»ö</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>°¡²û À¥¼­¹ö°¡ ¿©·¯ µð·ºÅä¸®¿¡¼­ ÆÄÀÏÀ» Ã£¾Æ¾ß ÇÒ
          ¶§°¡ ÀÖ´Ù. ÀÌ °æ¿ì MultiViews³ª ´Ù¸¥ ¹æ¹ýÀº µµ¿òÀÌ
          ¾ÈµÈ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¿©·¯ µð·ºÅä¸®¿¡¼­ ÆÄÀÏÀ» Ã£´Â ±ÔÄ¢À» Á÷Á¢ ÇÁ·Î±×·¥ÇÑ´Ù.</p>

<example><pre>
RewriteEngine on

#   ¸ÕÀú custom/¿¡¼­ Ã£±æ ½ÃµµÇÏ°í...
#   ...Ã£À¸¸é ³¡!
RewriteCond         /your/docroot/<strong>dir1</strong>/%{REQUEST_FILENAME}  -f
RewriteRule  ^(.+)  /your/docroot/<strong>dir1</strong>/$1  [L]

#   µÎ¹øÂ°·Î pub/¿¡¼­ Ã£±æ ½ÃµµÇÑ´Ù...
#   ...Ã£À¸¸é ³¡!
RewriteCond         /your/docroot/<strong>dir2</strong>/%{REQUEST_FILENAME}  -f
RewriteRule  ^(.+)  /your/docroot/<strong>dir2</strong>/$1  [L]

#   ¸øÃ£À¸¸é ´Ù¸¥ Alias³ª ScriptAlias Áö½Ã¾î µîÀ¸·Î ÁøÇàÇÑ´Ù.
RewriteRule   ^(.+)  -  [PT]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>URL¿¡ µû¶ó È¯°æº¯¼ö¸¦ ¼³Á¤ÇÑ´Ù</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¿äÃ»µé°£¿¡ »óÅÂÁ¤º¸¸¦ À¯ÁöÇÏ±âÀ§ÇØ URL¿¡ Á¤º¸¸¦
          ÀÎÄÚµùÇÏ´Â ¹æ¹ýµµ ÀÖ´Ù. ±×·¯³ª ´ÜÁö ÀÌ Á¤º¸¸¦ Á¦°ÅÇÏ±âÀ§ÇØ
          ¸ðµç ÆäÀÌÁö¿¡ CGI wrapper¸¦ »ç¿ëÇÏ°í ½ÍÁö ¾Ê´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀçÀÛ¼º ±ÔÄ¢À» »ç¿ëÇÏ¿© »óÅÂÁ¤º¸¸¦ ÃßÃâÇÏ°í, ÃßÃâÇÑ
          Á¤º¸¸¦ ³ªÁß¿¡ XSSI³ª CGI¿¡¼­ »ç¿ëÇÏ±âÀ§ÇØ È¯°æº¯¼ö¿¡
          ÀúÀåÇÑ´Ù. ±×·¡¼­ URL <code>/foo/S=java/bar/</code>´Â
          <code>/foo/bar/</code>·Î º¯È¯µÇ°í <code>STATUS</code>¶ó´Â
          È¯°æº¯¼ö °ªÀ» "java"·Î ¼³Á¤ÇÑ´Ù.</p>

<example><pre>
RewriteEngine on
RewriteRule   ^(.*)/<strong>S=([^/]+)</strong>/(.*)    $1/$3 [E=<strong>STATUS:$2</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>°¡»ó »ç¿ëÀÚ È£½ºÆ®</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>°¡»óÈ£½ºÆ®¸¦ »ç¿ëÇÏÁö ¾Ê°í °°Àº ÄÄÇ»ÅÍ·Î DNS A
          ·¹ÄÚµå¸¦ ¼³Á¤ÇÏ¿©
          <code>www.<strong>username</strong>.host.domain.com</code>À»
          »ç¿ëÀÚÀÇ È¨ÆäÀÌÁö·Î Á¦°øÇÏ°í ½Í´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>HTTP/1.0 ¿äÃ»ÀÇ °æ¿ì ¹æ¹ýÀÌ ¾øÁö¸¸, Host: HTTP
          Çì´õ¸¦ Æ÷ÇÔÇÑ HTTP/1.1 ¿äÃ»Àº ´ÙÀ½ ±ÔÄ¢À» »ç¿ëÇÏ¿©
          ³»ºÎÀûÀ¸·Î <code>http://www.username.host.com/anypath</code>¸¦
          <code>/home/username/anypath</code>·Î ÀçÀÛ¼ºÇÒ ¼ö
          ÀÖ´Ù:</p>

<example><pre>
RewriteEngine on
RewriteCond   %{<strong>HTTP_HOST</strong>}                 ^www\.<strong>[^.]+</strong>\.host\.com$
RewriteRule   ^(.+)                        %{HTTP_HOST}$1          [C]
RewriteRule   ^www\.<strong>([^.]+)</strong>\.host\.com(.*) /home/<strong>$1</strong>$2
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>È¨µð·ºÅä¸®¸¦ ¿ÜºÎ ¼­¹ö·Î ¸®´ÙÀÌ·º¼Ç</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>Áö¿ª µµ¸ÞÀÎ <code>ourdomain.com</code> ¹Û¿¡¼­ ¿äÃ»ÀÌ
          µé¾î¿À¸é È¨µð·ºÅä¸® URLÀ» ´Ù¸¥ À¥¼­¹ö
          <code>www.somewhere.com</code>À¸·Î ¸®´Ù¸®·º¼ÇÇÏ±æ
          ¹Ù¶õ´Ù. Á¾Á¾ °¡»óÈ£½ºÆ® »ç¿ëÀå¼Ò¿¡¼­ »ç¿ëÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀçÀÛ¼º Á¶°ÇÀ» »ç¿ëÇÏ¸é µÈ´Ù:</p>

<example><pre>
RewriteEngine on
RewriteCond   %{REMOTE_HOST}  <strong>!^.+\.ourdomain\.com$</strong>
RewriteRule   ^(/~.+)         http://www.somewhere.com/$1 [R,L]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>½ÇÆÐÇÑ URLÀ» ´Ù¸¥ À¥¼­¹ö·Î ¸®´ÙÀÌ·º¼Ç</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>URL ÀçÀÛ¼º¿¡ ´ëÇØ¼­ À¥¼­¹ö A¿¡ ÇØ´ç ÆÄÀÏÀÌ ¾ø´Â
          °æ¿ì À¥¼­¹ö B·Î ¿äÃ»À» ¸®´ÙÀÌ·º¼ÇÇÏ´Â ¹æ¹ýÀ» ÀÚÁÖ
          ¹°¾îº»´Ù. º¸Åë Perl·Î ÀÛ¼ºÇÑ <directive
          module="core">ErrorDocument</directive> CGI ½ºÅ©¸³Æ®¸¦
          »ç¿ëÇÏÁö¸¸, <module>mod_rewrite</module>¸¦ »ç¿ëÇÏ´Â
          ¹æ¹ýµµ ÀÖ´Ù. ±×·¯³ª ¼º´ÉÀº <directive
          module="core">ErrorDocument</directive> CGI ½ºÅ©¸³Æ®º¸´Ù
          ¶³¾îÁüÀ» ¸í½ÉÇÏ¶ó!</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>Ã¹¹øÂ° ¹æ¹ýÀº ºü¸£Áö¸¸ À¯¿¬¼ºÀÌ ¶³¾îÁö°í ¿ÏÀüÇÏÁö
          ¾Ê´Ù:</p>

<example><pre>
RewriteEngine on
RewriteCond   /your/docroot/%{REQUEST_FILENAME} <strong>!-f</strong>
RewriteRule   ^(.+)                             http://<strong>webserverB</strong>.dom/$1
</pre></example>

          <p>ÀÌ ¹æ¹ýÀÇ ´ÜÁ¡Àº <directive
          module="core">DocumentRoot</directive> ¾È¿¡ ÀÖ´Â ÆäÀÌÁö¸¸
          °¡´ÉÇÏ´Ù´Â Á¡ÀÌ´Ù. (¿¹¸¦ µé¾î È¨µð·ºÅä¸® µîÀ» À§ÇØ)
          Á¶°ÇÀ» Ãß°¡ÇÒ ¼ö ÀÖÁö¸¸, ´õ ÁÁÀº ¹æ¹ýÀÌ ÀÖ´Ù:</p>

<example><pre>
RewriteEngine on
RewriteCond   %{REQUEST_URI} <strong>!-U</strong>
RewriteRule   ^(.+)          http://<strong>webserverB</strong>.dom/$1
</pre></example>

          <p><module>mod_rewrite</module>ÀÇ URL Àü¹æÂüÁ¶(look-ahead)¸¦
          »ç¿ëÇÑ´Ù. ±×·¡¼­ ¸ðµç URL¿¡ µ¿ÀÛÇÏ°í ¾ÈÀüÇÏ´Ù. ±×·¯³ª
          ¸ðµç ¿äÃ»¸¶´Ù ³»ºÎ ÇÏÀ§¿äÃ»À» ÇÑ¹ø ´õ ÇÏ±â¶§¹®¿¡ À¥¼­¹ö
          ¼º´É¿¡ ¾Ç¿µÇâÀ» ÁØ´Ù. ±×·¡¼­ °­·ÂÇÑ CPU¿¡¼­ À¥¼­¹ö¸¦
          ½ÇÇàÇÑ´Ù¸é »ç¿ëÇÏ¶ó. ÄÄÇ»ÅÍ°¡ ´À¸®´Ù¸é Ã¹¹øÂ° ¹æ¹ýÀÌ³ª
          ´õ ³ªÀº <directive module="core">ErrorDocument</directive>
          CGI ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¶ó.</p>
        </dd>
      </dl>

    </section>

    <section>

      <title>È®Àå ¸®´ÙÀÌ·º¼Ç</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>°¡²û ¸®´ÙÀÌ·º¼ÇÇÏ´Â URLÀ» ´õ Á¶ÀýÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.
          ¾ÆÆÄÄ¡ ³»ºÎ URL escape ÇÔ¼ö´Â "<code>url#anchor</code>"
          °°Àº URLÀÇ anchorµµ escapeÇÑ´Ù. ¾ÆÆÄÄ¡ÀÇ
          <code>uri_escape()</code> ÇÔ¼ö´Â ¿ì¹°Á¤ÀÚ(#)µµ °°ÀÌ
          escapeÇÏ¹Ç·Î »ç¿ëÇÒ ¼ö ¾ø´Ù. ±×·¯¸é ¾î¶»°Ô ÀÌ·± URL·Î
          ¸®´ÙÀÌ·º¼ÇÇÒ ¼ö ÀÖ³ª?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>Á÷Á¢ ¸®´ÙÀÌ·º¼ÇÇÏ´Â NPH-CGI ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÑ ÇØ°áÃ¥ÀÌ
          ÇÊ¿äÇÏ´Ù. escape¸¦ ÇÏÁö ¾Ê±â¶§¹®ÀÌ´Ù (NPH=non-parseable
          headers). ¸ÕÀú ´ÙÀ½ ¼­¹ö¼³Á¤À» ÇÏ¿© (ÀçÀÛ¼º ±ÔÄ¢ÀÇ
          ³¡ºÎºÐ¿¡ »ç¿ëÇØ¾ß ÇÑ´Ù) »õ·Î¿î URL scheme
          <code>xredirect:</code>¸¦ µµÀÔÇÑ´Ù:</p>

<example><pre>
RewriteRule ^xredirect:(.+) /path/to/nph-xredirect.cgi/$1 \
            [T=application/x-httpd-cgi,L]
</pre></example>

          <p>±×·¯¸é <code>xredirect:</code>·Î ½ÃÀÛÇÏ´Â ¸ðµç URLÀº
          <code>nph-xredirect.cgi</code> ÇÁ·Î±×·¥À» ÅëÇÏ°Ô µÈ´Ù.
          ÇÁ·Î±×·¥Àº ´ÙÀ½°ú °°´Ù:</p>

<example><pre>
#!/path/to/perl
##
##  nph-xredirect.cgi -- NPH/CGI script for extended redirects
##  Copyright (c) 1997 Ralf S. Engelschall, All Rights Reserved.
##

$| = 1;
$url = $ENV{'PATH_INFO'};

print "HTTP/1.0 302 Moved Temporarily\n";
print "Server: $ENV{'SERVER_SOFTWARE'}\n";
print "Location: $url\n";
print "Content-type: text/html\n";
print "\n";
print "&lt;html&gt;\n";
print "&lt;head&gt;\n";
print "&lt;title&gt;302 Moved Temporarily (EXTENDED)&lt;/title&gt;\n";
print "&lt;/head&gt;\n";
print "&lt;body&gt;\n";
print "&lt;h1&gt;Moved Temporarily (EXTENDED)&lt;/h1&gt;\n";
print "The document has moved &lt;a HREF=\"$url\"&gt;here&lt;/a&gt;.&lt;p&gt;\n";
print "&lt;/body&gt;\n";
print "&lt;/html&gt;\n";

##EOF##
</pre></example>

          <p>±×·¯¸é <module>mod_rewrite</module>°¡ Á÷Á¢ ¹ÞÁö¸øÇÏ´Â
          ¸ðµç URL schemeÀ¸·Î ¸®´ÙÀÌ·º¼ÇÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î,
          ´ÙÀ½°ú °°ÀÌ <code>news:newsgroup</code>À¸·Î ¸®´ÙÀÌ·º¼ÇÇÒ
          ¼ö ÀÖ´Ù</p>

<example><pre>
RewriteRule ^anyurl  xredirect:news:newsgroup
</pre></example>

          <note>ÁÖÀÇ: À§ÀÇ Æ¯º°ÇÑ "Åë°ú" ±ÔÄ¢À» »ç¿ëÇÏ¿©
          <code>xredirect:</code>¸¦ ¸¶Áö¸·¿¡ È®ÀåÇØ¾ß ÇÏ±â¶§¹®¿¡
          ±ÔÄ¢¿¡ <code>[R]</code>ÀÌ³ª <code>[R,L]</code>À» »ç¿ëÇÏ¸é
          ¾ÈµÈ´Ù.</note>
        </dd>
      </dl>

    </section>

    <section>

      <title>ÀúÀå¼Ò Á¢±Ù Áß°è(multiplexer)</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p><a href="http://www.perl.com/CPAN">http://www.perl.com/CPAN</a>¿¡
          ÀÖ´Â ´ë´ÜÇÑ CPAN (Comprehensive Perl Archive Network)À»
          ¾Æ´Â°¡? ÀÌ ÁÖ¼Ò´Â ¼¼°è¿¡ Èð¾îÁø ¿©·¯ CPAN ¹Ì·¯ FTP
          ¼­¹öÁß Å¬¶óÀÌ¾ðÆ®¿¡ °¡±îÀÌ ÀÖ´Â ¼­¹ö·Î ¸®´ÙÀÌ·º¼ÇÇÑ´Ù.
          ÀÌ¸¦ FTP Á¢±Ù Áß°è ¼­ºñ½º¶ó°í ÇÑ´Ù. CPANÀº CGI ½ºÅ©¸³Æ®¸¦
          »ç¿ëÇÏÁö¸¸, <module>mod_rewrite</module>¸¦ »ç¿ëÇÏ¿©
          ºñ½ÁÇÏ°Ô ¸¸µé ¼ö ÀÖÀ»±î?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸ÕÀú <module>mod_rewrite</module> 3.0.0 ¹öÀüºÎÅÍ
          ¸®´ÙÀÌ·º¼Ç¿¡ "<code>ftp:</code>" schemeÀ» »ç¿ëÇÒ ¼ö
          ÀÖ´Ù. ´ÙÀ½À¸·Î Å¬¶óÀÌ¾ðÆ®ÀÇ ÃÖ»óÀ§ µµ¸ÞÀÎÀ» <directive
          module="mod_rewrite">RewriteMap</directive>°ú °°ÀÌ
          »ç¿ëÇÏ¿© À§Ä¡¸¦ ÃßÁ¤ÇÒ ¼ö ÀÖ´Ù. º¹ÀâÈ÷ ¿«ÀÎ ±ÔÄ¢¿¡¼­
          ÃÖ»óÀ§ µµ¸ÞÀÎÀ» Áß°è¸ÊÀÇ Å°·Î »ç¿ëÇÑ´Ù.</p>

<example><pre>
RewriteEngine on
RewriteMap    multiplex                txt:/path/to/map.cxan
RewriteRule   ^/CxAN/(.*)              %{REMOTE_HOST}::$1                 [C]
RewriteRule   ^.+\.<strong>([a-zA-Z]+)</strong>::(.*)$  ${multiplex:<strong>$1</strong>|ftp.default.dom}$2  [R,L]
</pre></example>

<example><pre>
##
##  map.cxan -- Multiplexing Map for CxAN
##

de        ftp://ftp.cxan.de/CxAN/
uk        ftp://ftp.cxan.uk/CxAN/
com       ftp://ftp.cxan.com/CxAN/
 :
##EOF##
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>½Ã°£¿¡ µû¸¥ ÀçÀÛ¼º</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>½Ã°£¿¡ µû¶ó ´Ù¸¥ ³»¿ëÀ» ¼­ºñ½ºÇÏ´Â °æ¿ì ¸¹Àº À¥°ü¸®ÀÚ´Â
          Àá½Ã Æ¯º°ÇÑ ÆäÀÌÁö·Î ¸®´ÙÀÌ·º¼ÇÇÏ±âÀ§ÇØ CGI ½ºÅ©¸³Æ®¸¦
          »ç¿ëÇÑ´Ù. <module>mod_rewrite</module>·Î´Â ¾î¶»°Ô
          ÇÒ ¼ö ÀÖ´Â°¡?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀçÀÛ¼º Á¶°Ç¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¿©·¯ <code>TIME_xxx</code>
          º¯¼ö°¡ ÀÖ´Ù. º¯¼ö¿Í Æ¯º°ÇÑ »çÀü¼ø¼­ ºñ±³
          <code>&lt;STRING</code>, <code>&gt;STRING</code>,
          <code>=STRING</code>À» »ç¿ëÇÏ¿© ½Ã°£¿¡ µû¶ó ¸®´ÙÀÌ·º¼ÇÇÒ
          ¼ö ÀÖ´Ù:</p>

<example><pre>
RewriteEngine on
RewriteCond   %{TIME_HOUR}%{TIME_MIN} &gt;0700
RewriteCond   %{TIME_HOUR}%{TIME_MIN} &lt;1900
RewriteRule   ^foo\.html$             foo.day.html
RewriteRule   ^foo\.html$             foo.night.html
</pre></example>

          <p>URL <code>foo.html</code>À» ¿äÃ»ÇÏ¸é
          <code>07:00-19:00</code> µ¿¾È <code>foo.day.html</code>
          ³»¿ëÀ» ¼­ºñ½ºÇÏ°í, ³ª¸ÓÁö ½Ã°£ µ¿¾È
          <code>foo.night.html</code> ³»¿ëÀ» ¼­ºñ½ºÇÑ´Ù. È¨ÆäÀÌÁö¿¡¼­
          »ç¿ëÇÏ±â ÁÁÀº ±â´ÉÀÌ´Ù...</p>
        </dd>
      </dl>

    </section>

    <section>

      <title>YYYY¸¦ XXXX·Î ÀÌÀüÇÑ °æ¿ì ¿ªÈ£È¯</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¿©·¯ <code>.html</code> ÆÄÀÏÀ» <code>.phtml</code>·Î
          º¯È¯ÇÏ´Â µî <code>document.YYYY</code>¸¦
          <code>document.XXXX</code>·Î ÀÌÀüÇÑÈÄ ¿ªÈ£È¯(backward
          compatibility) URLÀ» (°¡»óÀûÀ¸·Î Á¸ÀçÇÏ°Ô) ¸¸µé ¼ö
          ÀÖ³ª?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀÌ¸§À» ±âº»ÀÌ¸§À¸·Î ÀçÀÛ¼ºÇÑÈÄ »õ·Î¿î È®ÀåÀÚ¸¦
          °¡Áø ÆÄÀÏÀÌ ÀÖ´ÂÁö °Ë»çÇÑ´Ù. ÀÖ´Ù¸é ±× ÆÄÀÏ¸íÀ» »ç¿ëÇÏ°í,
          ¾øÀ¸¸é URLÀ» ¿ø·¡ »óÅÂ·Î ÀçÀÛ¼ºÇÑ´Ù.</p>


<example><pre>
#   ¹®¼­.html ÀÌ ¾ø°í
#   ¹®¼­.phtml ¸¸ ÀÖ´Â °æ¿ì
#   ¹®¼­.html À» ¹®¼­.phtml ·Î
#   ÀçÀÛ¼ºÇÏ´Â ¿ªÈ£È¯ ±ÔÄ¢
RewriteEngine on
RewriteBase   /~quux/
#   ±âº»ÀÌ¸§À» Ã£°í, Ã£¾Ò´Ù´Â »ç½ÇÀ» ±â¾ïÇÑ´Ù
RewriteRule   ^(.*)\.html$              $1      [C,E=WasHTML:yes]
#   ÆÄÀÏÀÌ ÀÖ´Ù¸é ¹®¼­.phtml ·Î ÀçÀÛ¼ºÇÑ´Ù
RewriteCond   %{REQUEST_FILENAME}.phtml -f
RewriteRule   ^(.*)$ $1.phtml                   [S=1]
#   ¾Æ´Ï¸é ¾Õ¿¡¼­ Ã£Àº ±âº»ÀÌ¸§À» µÇµ¹¸°´Ù
RewriteCond   %{ENV:WasHTML}            ^yes$
RewriteRule   ^(.*)$ $1.html
</pre></example>
        </dd>
      </dl>

    </section>

  </section>

  <section id="content">

    <title>ÄÁÅÙÃ÷ ´Ù·ç±â</title>

    <section>

      <title>»õ·Î ÀÌÀü (°¨Ãß±â)</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÃÖ±Ù <code>foo.html</code>À» <code>bar.html</code>·Î
          º¯°æÇÏ°í ¿ªÈ£È¯¼ºÀ» À§ÇØ ÀÌÀü URLÀ» °è¼Ó Á¦°øÇÏ°í
          ½Í´Ù°í °¡Á¤ÇÏÀÚ. »ç¿ëÀÚ´Â ÀÌÀü URLÀÌ º¯°æµÇ¾ú´Ù´Â
          »ç½ÇÀ» ´«Ä¡Ã¤Áö ¸øÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>´ÙÀ½ ±ÔÄ¢À¸·Î ÀÌÀü URLÀ» ³»ºÎÀûÀ¸·Î »õ·Î¿î URL·Î
          ÀçÀÛ¼ºÇÑ´Ù:</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^<strong>foo</strong>\.html$  <strong>bar</strong>.html
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>»õ·Î ÀÌÀü (¾Ë¸®±â)</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>´Ù½Ã <code>foo.html</code>À» <code>bar.html</code>·Î
          º¯°æÇÏ°í ¿ªÈ£È¯¼ºÀ» À§ÇØ ÀÌÀü URLÀ» °è¼Ó Á¦°øÇÏ°í
          ½Í´Ù°í °¡Á¤ÇÏÀÚ. ±×·¯³ª ÀÌÁ¦´Â ÀÌÀü URLÀ» »ç¿ëÇÏ¸é
          »ç¿ëÀÚ¿¡°Ô »õ·Î¿î URLÀ» ÈùÆ®·Î ¾Ë·ÁÁØ´Ù. Áï, ºê¶ó¿ìÀú
          ÁÖ¼ÒÃ¢ÀÌ º¯ÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>»õ·Î¿î URL·Î HTTP ¸®´ÙÀÌ·º¼ÇÇÏ´Ù. ±×·¯¸é ºê¶ó¿ìÀú°¡
          »õ·Î¿î URL¸¦ º¸ÀÌ°í º¯°æ»ç½ÇÀ» »ç¿ëÀÚ°¡ ¾Ë°ÔµÈ´Ù:</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^<strong>foo</strong>\.html$  <strong>bar</strong>.html  [<strong>R</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>ºê¶ó¿ìÀú¿¡ µû¸¥ ³»¿ë</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÃÖ¼ÒÇÑ Áß¿äÇÑ ÃÖ»óÀ§ ÆäÀÌÁö´Â ºê¶ó¿ìÀú¿¡ ÃÖÀûÈ­µÈ
          ³»¿ëÀ¸·Î ¼­ºñ½ºÇØ¾ßÇÒ °æ¿ì°¡ ÀÖ´Ù. Áï, ÃÖ½Å Netscape
          ºê¶ó¿ìÀú¿¡°Ô´Â ÃÖ»óÀÇ ¹öÀüÀ», Lynx ºê¶ó¿ìÀú¿¡°Ô´Â
          ÃÖÀú ¹öÀüÀ», ³ª¸ÓÁö ºê¶ó¿ìÀú¿¡´Â Æò±ÕÀûÀÎ ¹öÀüÀ»
          Á¦°øÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ºê¶ó¿ìÀú°¡ ³»¿ëÇù»óÀ» À§ÇØ ÀÚ½ÅÀÇ Á¾·ù¿¡ ´ëÇÑ Á¤º¸¸¦
          Á¦°øÇÏÁö ¾Ê±â¶§¹®¿¡ ³»¿ëÇù»óÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù. ´ë½Å
          HTTP "User-Agent" Çì´õ¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½ ±ÔÄ¢Àº HTTP
          "User-Agent" Çì´õ°¡ "Mozilla/3"À¸·Î ½ÃÀÛÇÏ¸é
          <code>foo.html</code> ÆäÀÌÁö¸¦ <code>foo.NS.html</code>·Î
          ÀçÀÛ¼ºÇÏ°í ÀçÀÛ¼ºÀ» Áß´ÜÇÑ´Ù. ºê¶ó¿ìÀú°¡ "Lynx"³ª
          "Mozilla" ¹öÀü 1 È¤Àº 2¶ó¸é URLÀº
          <code>foo.20.html</code>ÀÌ µÈ´Ù. ³ª¸ÓÁö ºê¶ó¿ìÀú´Â
          <code>foo.32.html</code> ÆäÀÌÁö¸¦ ¹Þ´Â´Ù. ¾Æ·¡ ±ÔÄ¢ÀÌ
          ÀÌ ÀÛ¾÷À» ÇÑ´Ù:</p>

<example><pre>
RewriteCond %{HTTP_USER_AGENT}  ^<strong>Mozilla/3</strong>.*
RewriteRule ^foo\.html$         foo.<strong>NS</strong>.html          [<strong>L</strong>]

RewriteCond %{HTTP_USER_AGENT}  ^<strong>Lynx/</strong>.*         [OR]
RewriteCond %{HTTP_USER_AGENT}  ^<strong>Mozilla/[12]</strong>.*
RewriteRule ^foo\.html$         foo.<strong>20</strong>.html          [<strong>L</strong>]

RewriteRule ^foo\.html$         foo.<strong>32</strong>.html          [<strong>L</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>µ¿Àû ¹Ì·¯</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¿ÜºÎ È£½ºÆ®¿¡ ¿ì¸® »çÀÌÆ®·Î °¡Á®¿À°í ½ÍÀº ÁÁÀº
          À¥ÆäÀÌÁö°¡ ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. FTP ¼­¹öÀÇ °æ¿ì Á÷Á¢ ¿ÜºÎ
          ÀÚ·áÀÇ ÃÖ½Åº¹»çº»À» À¯ÁöÇÏ´Â <code>mirror</code> ÇÁ·Î±×·¥À»
          »ç¿ëÇÒ ¼ö ÀÖ°í, À¥¼­¹ö¶ó¸é HTTP·Î ºñ½ÁÇÑ ÀÛ¾÷À» ÇÏ´Â
          <code>webcopy</code> ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª
          µÎ ¹æ¹ý ¸ðµÎ ´ÜÁ¡ÀÌ ÀÖ´Ù: º¹»çº»Àº °¡²û¾¿ ÇÁ·Î±×·¥À»
          ½ÇÇàÇØÁÙ ¶§¸¸ ÃÖ½ÅÆÇÀ¸·Î À¯ÁöµÈ´Ù. Á÷Á¢ ±¸¼ºÇØ¾ßÇÏ´Â
          Á¤ÀûÀÎ ¹Ì·¯°¡ ¾Æ´Ï¶ó¸é ÁÁ°Ú´Ù. ´ë½Å (¿ÜºÎ È£½ºÆ®¿¡¼­
          ÀÚ·á°¡ °»½ÅµÇ¸é) ÇÊ¿äÇÒ¶§ ÀÚµ¿À¸·Î ÀÚ·á¸¦ °»½ÅÇÏ´Â
          µ¿Àû ¹Ì·¯°¡ ÇÊ¿äÇÏ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀÌ¸¦ À§ÇØ <dfn>Proxy Throughput</dfn> ±â´ÉÀ» (ÇÃ·¡±×
          <code>[P]</code>) »ç¿ëÇÏ¿© ¿ÜºÎ À¥ÆäÀÌÁö È¤Àº ¿ÜºÎ
          À¥°ø°£ ÀüÃ¼¸¦ ¿ì¸® ÀÌ¸§°ø°£À¸·Î ´ëÀÀÇÑ´Ù:</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^<strong>hotsheet/</strong>(.*)$  <strong>http://www.tstimpreso.com/hotsheet/</strong>$1  [<strong>P</strong>]
</pre></example>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^<strong>usa-news\.html</strong>$   <strong>http://www.quux-corp.com/news/index.html</strong>  [<strong>P</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>µ¿Àû ¿ª¹Ì·¯</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>...</dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
<example><pre>
RewriteEngine on
RewriteCond   /mirror/of/remotesite/$1           -U
RewriteRule   ^http://www\.remotesite\.com/(.*)$ /mirror/of/remotesite/$1
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>¾ø´Â ÀÚ·á¸¦ ÀÎÆ®¶ó³Ý¿¡¼­ °¡Á®¿À±â</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>½ÇÁ¦ ÀÚ·á¸¦ ¹æÈ­º®ÀÌ º¸È£ÇÏ´Â (³»ºÎ) ÀÎÆ®¶ó³Ý À¥¼­¹ö¿¡
          (<code>www2.quux-corp.dom</code>) ÀúÀåÇÏ¸é¼­, ±â¾÷ÀÇ
          (¿ÜºÎ) ÀÎÅÍ³Ý À¥¼­¹ö¸¦ (<code>www.quux-corp.dom</code>)
          ½ÇÇàÇÏ´Â °ÍÃ³·³ º¸ÀÌ°Ô ÇÑ´Ù. ¿ÜºÎ À¥¼­¹ö´Â ¿äÃ»ÇÑ
          ÀÚ·á¸¦ ³»ºÎ À¥¼­¹ö¿¡¼­ °¡Á®¿Â´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸ÕÀú ¹æÈ­º®ÀÌ ³»ºÎ À¥¼­¹ö¸¦ º¸È£ÇÏ°í ¿ÜºÎ À¥¼­¹ö¸¸ÀÌ
          ³»ºÎ À¥¼­¹ö¿¡¼­ ÀÚ·á¸¦ ¾òÀ» ¼ö ÀÖ°Ô ÇÑ´Ù. ´ÙÀ½°ú °°ÀÌ
          ÆÐÅ¶ÇÊÅÍ¸µ ¹æÈ­º®À» ¼³Á¤ÇÑ´Ù:</p>

<example><pre>
<strong>ALLOW</strong> Host www.quux-corp.dom Port &gt;1024 --&gt; Host www2.quux-corp.dom Port <strong>80</strong>
<strong>DENY</strong>  Host *                 Port *     --&gt; Host www2.quux-corp.dom Port <strong>80</strong>
</pre></example>

          <p>½ÇÁ¦ ¼³Á¤¹®¹ý¿¡ ¾Ë¸Â°Ô °íÃÄ¶ó. ¾ø´Â ÀÚ·á¸¦ ³»ºÎÀûÀ¸·Î
          proxy throughput ±â´ÉÀ» ÅëÇØ ¿äÃ»ÇÏ´Â
          <module>mod_rewrite</module> ±ÔÄ¢À» ÀÛ¼ºÇÑ´Ù:</p>

<example><pre>
RewriteRule ^/~([^/]+)/?(.*)          /home/$1/.www/$2
RewriteCond %{REQUEST_FILENAME}       <strong>!-f</strong>
RewriteCond %{REQUEST_FILENAME}       <strong>!-d</strong>
RewriteRule ^/home/([^/]+)/.www/?(.*) http://<strong>www2</strong>.quux-corp.dom/~$1/pub/$2 [<strong>P</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>·Îµå¹ë·±½Ì (ºÎÇÏ ºÐ»êÇÏ±â)</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p><code>www.foo.com</code>ÀÇ Åë½Å·®À»
          <code>www[0-5].foo.com</code> (ÃÑ ¼­¹ö 6´ë)À¸·Î ºÐ»êÇÏ°í
          ½Í´Ù. ¾î¶»°Ô ÇÏ´Â°¡?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸Å¿ì ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î ÀÌ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Ù.
          ¸ÕÀú DNS¸¦ »ç¿ëÇÑ Àß ¾Ë·ÁÁø ¹æ¹ýÀ» ¼³¸íÇÏ°í,
          <module>mod_rewrite</module>¸¦ »ç¿ëÇÏ´Â °æ¿ì¸¦ »ìÆìº¸ÀÚ:</p>

          <ol>
            <li>
              <strong>DNS Round-Robin</strong>

              <p>°¡Àå °£´ÜÇÑ ·Îµå¹ë·±½Ì ¹æ¹ýÀº <code>BIND</code>ÀÇ
              DNS round-robin ¹æ½ÄÀ» »ç¿ëÇÏ´Â °ÍÀÌ´Ù. ´ÙÀ½°ú
              °°ÀÌ DNS A(address) ·¹ÄÚµå¿¡
              <code>www[0-9].foo.com</code>À» ¼³Á¤ÇÑ´Ù.</p>

<example><pre>
www0   IN  A       1.2.3.1
www1   IN  A       1.2.3.2
www2   IN  A       1.2.3.3
www3   IN  A       1.2.3.4
www4   IN  A       1.2.3.5
www5   IN  A       1.2.3.6
</pre></example>

              <p>±×¸®°í ´ÙÀ½ Ç×¸ñÀ» Ãß°¡ÇÑ´Ù:</p>

<example><pre>
www    IN  CNAME   www0.foo.com.
       IN  CNAME   www1.foo.com.
       IN  CNAME   www2.foo.com.
       IN  CNAME   www3.foo.com.
       IN  CNAME   www4.foo.com.
       IN  CNAME   www5.foo.com.
       IN  CNAME   www6.foo.com.
</pre></example>

              <p>Àß¸øµÈ °ÍÃ³·³ º¸ÀÌÁö¸¸, ½ÇÁ¦·Î <code>BIND</code>ÀÇ
              ÀÇµµµÈ ±â´ÉÀÌ´Ù. ÀÌÁ¦ <code>www.foo.com</code>À»
              Ã£À¸¸é, <code>BIND</code>´Â ¸Å¹ø ¼ø¼­¸¦ Á¶±Ý¾¿
              ¹Ù²ã°¡¸ç <code>www0-www6</code>À» ¹ÝÈ¯ÇÑ´Ù. ±×·¡¼­
              Å¬¶óÀÌ¾ðÆ®µéÀ» ¿©·¯ ¼­¹ö·Î ºÐ»êÇÑ´Ù. ±×·¯³ª DNS
              °Ë»ö °á°ú°¡ ³×Æ®¿÷ÀÇ ´Ù¸¥ ³×ÀÓ¼­¹ö¿¡ Ä³½¬µÇ¿©
              <code>www.foo.com</code>À» Ã£Àº °á°ú°¡ Æ¯Á¤
              <code>wwwN.foo.com</code>ÀÌ¸é Å¬¶óÀÌ¾ðÆ®ÀÇ ´ÙÀ½
              ¿äÃ»µéµµ °°Àº <code>wwwN.foo.com</code>À¸·Î
              º¸³»Áö±â¶§¹®¿¡ ¿Ïº®ÇÑ ·Îµå¹ë·±½Ì ±â¹ýÀÌ ¾Æ´ÔÀ»
              ÁÖÀÇÇÏ¶ó. ±×·¯³ª Å©°Ô º¸¸é ¿äÃ»ÀÌ ¿©·¯ À¥¼­¹ö¿¡
              ºÐ»êµÇ¹Ç·Î È¿°ú°¡ ÁÁ´Ù.</p>
            </li>

            <li>
              <strong>DNS ·Îµå¹ë·±½Ì</strong>

              <p><a href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>¿¡
              ÀÖ´Â <code>lbnamed</code> ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿©
              Á¤±³ÇÑ DNS±â¹Ý ·Îµå¹ë·±½ÌÀ» ÇÒ ¼ö ÀÖ´Ù. DNS°¡
              ½ÇÁ¦ ·Îµå¹ë·±½ÌÀ» ÇÏµµ·Ï ¸¸µå´Â ¿©·¯ µµ±¸¿Í Perl
              5 ÇÁ·Î±×·¥ÀÌ´Ù.</p>
            </li>

            <li>
              <strong>Proxy Throughput Round-Robin</strong>

              <p>ÀÌ ¹æ¹ýÀº <module>mod_rewrite</module>¿Í proxy
              throughput ±â´ÉÀ» »ç¿ëÇÑ´Ù. ¸ÕÀú DNS¿¡ ´ÙÀ½ Ç×¸ñÀ»
              »ç¿ëÇÏ¿© <code>www0.foo.com</code>ÀÌ ½ÇÁ¦
              <code>www.foo.com</code>À» Àü´ãÇÏ°Ô ÇÑ´Ù</p>

<example><pre>
www    IN  CNAME   www0.foo.com.
</pre></example>

              <p>±×¸®°í <code>www0.foo.com</code>À» ÇÁ·Ï½ÃÀü¿ë
              ¼­¹ö·Î º¯°æÇÑ´Ù. Áï, URLÀ» ¹ÞÀ¸¸é ¼­¹ö´Â ³»ºÎ
              ÇÁ·Ï½Ã¸¦ ÅëÇØ ´Ù¸¥ 5´ë ¼­¹öÁß (<code>www1-www5</code>)
              ÇÑ´ë·Î º¸³»±â¸¸ ÇÑ´Ù. ÀÌ¸¦ À§ÇØ ¸ÕÀú ¸ðµç URLÀ»
              ·Îµå¹ë·±½Ì ½ºÅ©¸³Æ® <code>lb.pl</code>·Î º¸³»´Â
              ±ÔÄ¢À» ¸¸µç´Ù.</p>

<example><pre>
RewriteEngine on
RewriteMap    lb      prg:/path/to/lb.pl
RewriteRule   ^/(.+)$ ${lb:$1}           [P,L]
</pre></example>

              <p><code>lb.pl</code>À» ÀÛ¼ºÇÑ´Ù:</p>

<example><pre>
#!/path/to/perl
##
##  lb.pl -- ·Îµå¹ë·±½Ì ½ºÅ©¸³Æ®
##

$| = 1;

$name   = "www";     # ±âº» È£½ºÆ®¸í
$first  = 1;         # Ã¹¹øÂ° ¼­¹ö (ÀÚ½ÅÀÌ 0ÀÌ±â ¶§¹®¿¡, 0À» »ç¿ëÇÏÁö ¾Ê´Â´Ù)
$last   = 5;         # round-robin¿¡¼­ ¸¶Áö¸· ¼­¹ö
$domain = "foo.dom"; # µµ¸ÞÀÎ¸í

$cnt = 0;
while (&lt;STDIN&gt;) {
    $cnt = (($cnt+1) % ($last+1-$first));
    $server = sprintf("%s%d.%s", $name, $cnt+$first, $domain);
    print "http://$server/$_";
}

##EOF##
</pre></example>

              <note>¸¶Áö¸· ÁÖÀÇ: ¿Ö ÀÌ ¹æ¹ýÀÌ À¯¿ëÇÑ°¡?
              <code>www0.foo.com</code>¿¡ ºÎ´ãÀÌ °¡Áö¾Ê´Â°¡?
              ¹°·Ð, ºÎ´ãÀÌ µÈ´Ù. ±×·¯³ª ´Ü¼øÇÑ proxy throughput
              ¿äÃ»¸¸ ÇÏ±â¶§¹®¿¡ ±¦Âú´Ù! ¸ðµç SSI, CGI, ePerl
              µîÀº ÀüÀûÀ¸·Î ´Ù¸¥ ¼­¹ö°¡ Ã³¸®ÇÑ´Ù. ÀÌ°ÍÀÌ ÇÙ½ÉÀÌ´Ù.</note>
            </li>

            <li>
              <strong>ÇÏµå¿þ¾î/TCP Round-Robin</strong>

              <p>ÇÏµå¿þ¾î¸¦ »ç¿ëÇÑ ÇØ°áÃ¥µµ ÀÖ´Ù. Cisco´Â TCP/IP
              ¼öÁØ¿¡¼­ ·Îµå¹ë·±½ÌÀ» ÇÏ´Â LocalDirector¶ó´Â ±«¹°À»
              ÆÇ´Ù. ½ÇÁ¦·Î´Â À¥¼­¹ö±º ¾Õ´Ü¿¡ À§Ä¡ÇÏ´Â ÀÏÁ¾ÀÇ
              È¸·Î¼öÁØ °ÔÀÌÆ®¿þÀÌ´Ù. ÀÚ±ÝÀÌ ÃæºÐÇÏ°í °í¼º´É
              ÇØ°áÃ¥ÀÌ ÇÊ¿äÇÏ´Ù¸é ÀÌ°ÍÀ» »ç¿ëÇÏ¶ó.</p>
            </li>
          </ol>
        </dd>
      </dl>

    </section>

    <section>

      <title>»õ·Î¿î MIME-type, »õ·Î¿î ¼­ºñ½º</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>³×Æ®¿÷¿¡´Â ¸ÚÁø CGI ÇÁ·Î±×·¥µéÀÌ ¸¹´Ù. ±×·¯³ª »ç¿ëÇÏ±â
          ¹ø°Å·¯¿ö¼­ ¸¹Àº À¥°ü¸®ÀÚ°¡ »ç¿ëÇÏÁö ¾Ê´Â´Ù. ¾ÆÆÄÄ¡ÀÇ
          MIME-type¿¡ µû¸¥ Action ÇÚµé·¯ ±â´Éµµ CGI ÇÁ·Î±×·¥ÀÌ
          Æ¯º°ÇÑ URLÀ» (Á¤È®È÷ <code>PATH_INFO</code>¿Í
          <code>QUERY_STRINGS</code>) ÇÁ·Î±×·¥ÀÇ ÀÔ·ÂÀ¸·Î »ç¿ëÇÏÁö
          ¾ÊÀ» ¶§¸¸ ÀûÀýÇÏ´Ù. ¸ÕÀú, È®ÀåÀÚ°¡ (secure CGI¸¦ ÁÙ¿©)
          <code>.scgi</code>ÀÎ ÆÄÀÏÀ» À¯¸íÇÑ <code>cgiwrap</code>
          ÇÁ·Î±×·¥À¸·Î Ã³¸®ÇÏ±âÀ§ÇØ »õ·Î¿î typeÀ» ¼³Á¤ÇÑ´Ù.
          ¹®Á¦´Â (À§¿¡¼­ º») ÀÏ°üµÈ URL ±¸Á¶¸¦ »ç¿ëÇÏ´Â °æ¿ì
          »ç¿ëÀÚ È¨µð·ºÅä¸®°¡ <code>/u/user/foo/bar.scgi</code>°°Àº
          URLÀÎ Á¡ÀÌ´Ù. <code>cgiwrap</code>´Â
          <code>/~user/foo/bar.scgi/</code> Çü½ÄÀÇ URLÀ»
          ¿øÇÏ±â¶§¹®ÀÌ´Ù. ´ÙÀ½ ±ÔÄ¢ÀÌ ¹®Á¦¸¦ ÇØ°áÇÑ´Ù:</p>

<example><pre>
RewriteRule ^/[uge]/<strong>([^/]+)</strong>/\.www/(.+)\.scgi(.*) ...
... /internal/cgi/user/cgiwrap/~<strong>$1</strong>/$2.scgi$3  [NS,<strong>T=application/x-http-cgi</strong>]
</pre></example>

          <p>ÀÌÁ¦ ´Ù¸¥ ¸ÚÁø ÇÁ·Î±×·¥, (URL ÇÏÀ§Æ®¸®¿¡ ´ëÇÑ
          <code>access.log</code>¸¦ Ãâ·ÂÇÏ´Â) <code>wwwlog</code>¿Í
          (URL ÇÏÀ§Æ®¸®¿¡ Glimpse¸¦ ½ÇÇàÇÏ´Â) <code>wwwidx</code>°¡
          ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. ¿ì¸®´Â ÇÁ·Î±×·¥¿¡°Ô ÀÛ¾÷ÇÒ ´ë»óÀÎ
          URL ¿µ¿ªÀ» ¾Ë·ÁÁà¾ß ÇÑ´Ù. ±×·¯³ª ¿äÃ»ÇÒ¶§¸¶´Ù Ç×»ó
          Àû¾îÁà¾ß ÇÏ±â¶§¹®¿¡ ±ò²ûÇÏÁö ¾Ê´Ù. Áï, º¸Åë
          <code>/u/user/foo/</code>¿¡ ´ëÇØ <code>swwidx</code>
          ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù¸é ´ÙÀ½°ú °°Àº ¸µÅ©¸¦ »ç¿ëÇÑ´Ù</p>

<example><pre>
/internal/cgi/user/swwidx?i=/u/user/foo/
</pre></example>

          <p>±ò²ûÇÏÁö ¾Ê´Ù. ¸µÅ©¿¡ ¿µ¿ªÀÇ À§Ä¡<strong>¿Í</strong>
          CGI À§Ä¡¸¦ <strong>¸ðµÎ</strong> Àû¾î¾ß ÇÏ±â¶§¹®ÀÌ´Ù.
          ¿µ¿ªÀ» Àç±¸¼ºÇÑ´Ù¸é ¿©·¯ ÇÏÀÌÆÛ¸µÅ©¸¦ ¼öÁ¤ÇÏ´Âµ¥ ¸¹Àº
          ½Ã°£ÀÌ °É¸± °ÍÀÌ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÇØ°áÃ¥Àº ÀÚµ¿À¸·Î ÀûÀýÇÑ CGI¸¦ ½ÇÇàÇÏ´Â »õ·Î¿î
          Æ¯º°ÇÑ URL Çü½ÄÀ» ¸¸µå´Â °ÍÀÌ´Ù. ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù:</p>

<example><pre>
RewriteRule   ^/([uge])/([^/]+)(/?.*)/\*  /internal/cgi/user/wwwidx?i=/$1/$2$3/
RewriteRule   ^/([uge])/([^/]+)(/?.*):log /internal/cgi/user/wwwlog?f=/$1/$2$3
</pre></example>

          <p>ÀÌÁ¦ <code>/u/user/foo/</code>À» °Ë»öÇÏ´Â ¸µÅ©´Â
          ´ÙÀ½°ú °°´Ù</p>

<example><pre>
HREF="*"
/u/user/foo/* (???)
</pre></example>

          <p>³»ºÎÀûÀ¸·Î ´ÙÀ½°ú °°ÀÌ ÀÚµ¿º¯È¯µÈ´Ù</p>

<example><pre>
/internal/cgi/user/wwwidx?i=/u/user/foo/
</pre></example>

          <p>°°Àº ¹æ¹ýÀ¸·Î ¸µÅ© µÚ¿¡ <code>:log</code>¸¦ »ç¿ëÇÏ¿©
          Á¢±Ù ·Î±× CGI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖ´Ù.</p>
        </dd>
      </dl>

    </section>

    <section>

      <title>Á¤Àû¿¡¼­ µ¿ÀûÀ¸·Î</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¾î¶»°Ô ºê¶ó¿ìÀú¿Í »ç¿ëÀÚ°¡ ¸ð¸£°Ô ÀÚ¿¬½º·´°Ô Á¤Àû
          ÆäÀÌÁö <code>foo.html</code>À» µ¿ÀûÀÎ <code>foo.cgi</code>·Î
          º¯°æÇÒ ¼ö ÀÖ³ª.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>URLÀ» CGI ½ºÅ©¸³Æ®·Î ÀçÀÛ¼ºÇÏ°í, MIME-typeÀ» ¼öÁ¤ÇÏ¿©
          CGI ½ºÅ©¸³Æ®·Î ½ÇÇàÇÏ°Ô ÇÑ´Ù. ±×·¡¼­
          <code>/~quux/foo.html</code>¸¦ ¿äÃ»ÇÏ¸é ³»ºÎÀûÀ¸·Î
          <code>/~quux/foo.cgi</code>¸¦ ½ÇÇàÇÏ°Ô µÈ´Ù.</p>

<example><pre>
RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^foo\.<strong>html</strong>$  foo.<strong>cgi</strong>  [T=<strong>application/x-httpd-cgi</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>Áï¼® ÄÁÅÙÃ÷ Àç»ý¼º</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>ÀÌ ¹æ¹ýÀº ½Ç·Î ºñ±âÀÌ´Ù: µ¿ÀûÀ¸·Î ÆäÀÌÁö¸¦ »ý¼ºÇÏÁö¸¸,
          Á¤ÀûÀ¸·Î ÆäÀÌÁö¸¦ ¼­ºñ½ºÇÑ´Ù. Áï, ÆäÀÌÁö´Â ¼ø¼öÇÏ°Ô
          (ÆÄÀÏ½Ã½ºÅÛ¿¡¼­ ÀÐÀº ³»¿ëÀ» ±×´ë·Î) Á¤Àû ÆäÀÌÁö·Î
          Àü´ÞµÇÁö¸¸, ¾øÀ» °æ¿ì À¥¼­¹ö°¡ µ¿ÀûÀ¸·Î »ý¼ºÇÑ´Ù.
          ±×·¯¸é ´©°¡ (È¤Àº cron ÀÛ¾÷ÀÌ) Á¤Àû ÄÁÅÙÃ÷¸¦ Áö¿ìÁö¾Ê´Â
          ÇÑ CGI°¡ »ý¼ºÇÑ ÆäÀÌÁö¸¦ Á¤ÀûÀ¸·Î ¼­ºñ½ºÇÑ´Ù. ÄÁÅÙÃ÷¸¦
          Áö¿ì¸é ³»¿ëÀ» °»½ÅÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          ´ÙÀ½ ±ÔÄ¢À» »ç¿ëÇÑ´Ù:

<example><pre>
RewriteCond %{REQUEST_FILENAME}   <strong>!-s</strong>
RewriteRule ^page\.<strong>html</strong>$          page.<strong>cgi</strong>   [T=application/x-httpd-cgi,L]
</pre></example>

          <p>¿©±â¼­ <code>page.html</code>¸¦ ¿äÃ»ÇÒ¶§
          <code>page.html</code>ÀÌ ¾ø°Å³ª ÆÄÀÏÅ©±â°¡ 0ÀÎ °æ¿ì
          ³»ºÎÀûÀ¸·Î <code>page.cgi</code>¸¦ ½ÇÇàÇÑ´Ù. ¿©±â¼­
          ºñ°áÀº <code>page.cgi</code>°¡ ÀÏ¹ÝÀûÀÎ CGI ½ºÅ©¸³Æ®¿Í
          °°ÀÌ <code>STDOUT</code>¿¡ Ãâ·ÂÇÏ°í, Ãß°¡·Î Ãâ·ÂÀ»
          <code>page.html</code> ÆÄÀÏ¿¡ Àû´Â´Ù. ÇÑ¹ø ½ÇÇàÇÑÈÄ
          ¼­¹ö´Â <code>page.html</code>ÀÇ Á¤º¸¸¦ º¸³½´Ù. À¥°ü¸®ÀÚ°¡
          °­Àç·Î ³»¿ëÀ» °»½ÅÇÏ°í ½Í´Ù¸é, (º¸Åë cron ÀÛ¾÷ÀÌ)
          <code>page.html</code>À» Áö¿ì±â¸¸ ÇÏ¸é µÈ´Ù.</p>
        </dd>
      </dl>

    </section>

    <section>

      <title>ÀÚµ¿À¸·Î »õ·Î °íÄ§ÇÏ´Â ¹®¼­</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>º¹ÀâÇÑ À¥ÆäÀÌÁö¸¦ ¸¸µé¶§ ÆíÁýÀÚ°¡ ³»¿ëÀ» ¼öÁ¤ÇÒ
          ¶§¸¶´Ù ÀÚµ¿À¸·Î ÆäÀÌÁö¸¦ »õ·Î °íÄ§ÇÏ´Â À¥ºê¶ó¿ìÀú°¡
          ÀÖÀ¸¸é ¾ó¸¶³ª ÁÁÀ»±î? ºÒ°¡´ÉÇÑ°¡?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>°¡´ÉÇÏ´Ù! MIME multipart ±â´É°ú À¥¼­¹ö NPH ±â´É,
          <module>mod_rewrite</module>ÀÇ URL Á¶ÀÛ ´É·ÂÀ» °áÇÕÇÏ¸é
          µÈ´Ù. ¸ÕÀú, »õ·Î¿î URL ±â´ÉÀ» ¸¸µç´Ù: URL¿¡
          <code>:refresh</code>¸¦ Ãß°¡ÇÏ±â¸¸ ÇÏ¸é ÆÄÀÏ½Ã½ºÅÛ¿¡¼­
          ¼öÁ¤µÉ ¶§¸¶´Ù »õ·Î °íÄ§ÇÑ´Ù.</p>

<example><pre>
RewriteRule   ^(/[uge]/[^/]+/?.*):refresh  /internal/cgi/apache/nph-refresh?f=$1
</pre></example>

          <p>ÀÌÁ¦ ´ÙÀ½ URL¿¡ Á¢±ÙÇÏ¸é</p>

<example><pre>
/u/foo/bar/page.html:refresh
</pre></example>

          <p>´ÙÀ½ URLÀ» ³»ºÎÀûÀ¸·Î ºÎ¸¥´Ù</p>

<example><pre>
/internal/cgi/apache/nph-refresh?f=/u/foo/bar/page.html
</pre></example>

          <p>ÀÌÁ¦ NPH-CGI ½ºÅ©¸³Æ®¸¸ ³²¾Ò´Ù. º¸Åë "µ¶ÀÚ¿¡°Ô
          ¿¬½ÀÀ¸·Î ³²°ÜµÒ"ÀÌ¶ó°í ¸»ÇÏÁö¸¸ ;-) ³ª´Â ÀÌ°Íµµ Á¦°øÇÑ´Ù.</p>

<example><pre>
#!/sw/bin/perl
##
##  nph-refresh -- NPH/CGI script for auto refreshing pages
##  Copyright (c) 1997 Ralf S. Engelschall, All Rights Reserved.
##
$| = 1;

#   split the QUERY_STRING variable
@pairs = split(/&amp;/, $ENV{'QUERY_STRING'});
foreach $pair (@pairs) {
    ($name, $value) = split(/=/, $pair);
    $name =~ tr/A-Z/a-z/;
    $name = 'QS_' . $name;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    eval "\$$name = \"$value\"";
}
$QS_s = 1 if ($QS_s eq '');
$QS_n = 3600 if ($QS_n eq '');
if ($QS_f eq '') {
    print "HTTP/1.0 200 OK\n";
    print "Content-type: text/html\n\n";
    print "&amp;lt;b&amp;gt;ERROR&amp;lt;/b&amp;gt;: No file given\n";
    exit(0);
}
if (! -f $QS_f) {
    print "HTTP/1.0 200 OK\n";
    print "Content-type: text/html\n\n";
    print "&amp;lt;b&amp;gt;ERROR&amp;lt;/b&amp;gt;: File $QS_f not found\n";
    exit(0);
}

sub print_http_headers_multipart_begin {
    print "HTTP/1.0 200 OK\n";
    $bound = "ThisRandomString12345";
    print "Content-type: multipart/x-mixed-replace;boundary=$bound\n";
    &amp;print_http_headers_multipart_next;
}

sub print_http_headers_multipart_next {
    print "\n--$bound\n";
}

sub print_http_headers_multipart_end {
    print "\n--$bound--\n";
}

sub displayhtml {
    local($buffer) = @_;
    $len = length($buffer);
    print "Content-type: text/html\n";
    print "Content-length: $len\n\n";
    print $buffer;
}

sub readfile {
    local($file) = @_;
    local(*FP, $size, $buffer, $bytes);
    ($x, $x, $x, $x, $x, $x, $x, $size) = stat($file);
    $size = sprintf("%d", $size);
    open(FP, "&amp;lt;$file");
    $bytes = sysread(FP, $buffer, $size);
    close(FP);
    return $buffer;
}

$buffer = &amp;readfile($QS_f);
&amp;print_http_headers_multipart_begin;
&amp;displayhtml($buffer);

sub mystat {
    local($file) = $_[0];
    local($time);

    ($x, $x, $x, $x, $x, $x, $x, $x, $x, $mtime) = stat($file);
    return $mtime;
}

$mtimeL = &amp;mystat($QS_f);
$mtime = $mtime;
for ($n = 0; $n &amp;lt; $QS_n; $n++) {
    while (1) {
        $mtime = &amp;mystat($QS_f);
        if ($mtime ne $mtimeL) {
            $mtimeL = $mtime;
            sleep(2);
            $buffer = &amp;readfile($QS_f);
            &amp;print_http_headers_multipart_next;
            &amp;displayhtml($buffer);
            sleep(5);
            $mtimeL = &amp;mystat($QS_f);
            last;
        }
        sleep($QS_s);
    }
}

&amp;print_http_headers_multipart_end;

exit(0);

##EOF##
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>´ë·®ÀÇ °¡»óÈ£½ºÆ®</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>°¡»óÈ£½ºÆ®°¡ ¸î°³¸¸ ÀÖ´Ù¸é ¾ÆÆÄÄ¡ÀÇ <directive
          type="section" module="core">VirtualHost</directive>
          ±â´ÉÀÌ Àß µ¿ÀÛÇÑ´Ù. ±×·¯³ª °¡»óÈ£½ºÆ®°¡ ¼ö¹é°³ ÀÖ´Â
          ISP¶ó¸é ÀÌ ±â´ÉÀÌ ÃÖ¼±Àº ¾Æ´Ï´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>ÀÌ ±â´ÉÀ» Á¦°øÇÏ·Á¸é <dfn>Proxy Throughput</dfn>
          ±â´ÉÀ» (ÇÃ·¡±× <code>[P]</code>) »ç¿ëÇÏ¿© ¿ÜºÎ À¥ÆäÀÌÁö
          È¤Àº ÀüÃ¼ ¿ÜºÎ À¥¿µ¿ªÀ» ¿ì¸®ÀÇ ÀÌ¸§°ø°£¿¡ ´ëÀÀÇÑ´Ù:</p>

<example><pre>
##
##  vhost.map
##
www.vhost1.dom:80  /path/to/docroot/vhost1
www.vhost2.dom:80  /path/to/docroot/vhost2
     :
www.vhostN.dom:80  /path/to/docroot/vhostN
</pre></example>

<example><pre>
##
##  httpd.conf
##
    :
#   ¸®´ÙÀÌ·ºÆ®ÇÒ¶§ Á¤±Ô È£½ºÆ®¸íÀ» »ç¿ëÇÑ´Ù.
UseCanonicalName on

    :
#   °¡»óÈ£½ºÆ®¸¦ CLF Çü½Ä ¾Õ¿¡ Ãß°¡ÇÑ´Ù
CustomLog  /path/to/access_log  "%{VHOST}e %h %l %u %t \"%r\" %&gt;s %b"
    :

#   ÁÖ¼­¹ö¿¡¼­ ÀçÀÛ¼º ¿£ÁøÀ» »ç¿ëÇÑ´Ù
RewriteEngine on

#   µÎ ¸ÊÀ» Á¤ÀÇÇÑ´Ù: ÇÏ³ª´Â URLÀ» °íÄ¡°í,
#   ´Ù¸¥ ÇÏ³ª´Â °¡»óÈ£½ºÆ®º° DocumentRoot¸¦
#   Á¤ÀÇÇÑ´Ù.
RewriteMap    lowercase    int:tolower
RewriteMap    vhost        txt:/path/to/vhost.map

#   ÀÌÁ¦ Å©°í º¹ÀâÇÑ ±ÔÄ¢ ÇÑ°³¸¦ »ç¿ëÇÏ¿©
#   °¡»óÈ£½ºÆ®·Î ´ëÀÀÇÑ´Ù.
#
#   1. °¡»óÈ£½ºÆ®µéÀÌ °°ÀÌ »ç¿ëÇÏ´Â À§Ä¡´Â ´ëÀÀÇÏÁö ¾Ê´Â´Ù
RewriteCond   %{REQUEST_URI}  !^/commonurl1/.*
RewriteCond   %{REQUEST_URI}  !^/commonurl2/.*
    :
RewriteCond   %{REQUEST_URI}  !^/commonurlN/.*
#
#   2. ¿ì¸®°¡ ÇöÀç »ç¿ëÇÏ´Â ¹æ¹ýÀÌ Host Çì´õ¸¦
#      °¡»óÈ£½ºÆ®¸¦ Áö¿øÇÏ¹Ç·Î
#      Host Çì´õ°¡ ÀÖ´ÂÁö È®ÀÎÇÑ´Ù
RewriteCond   %{HTTP_HOST}  !^$
#
#   3. È£½ºÆ®¸íÀ» ¼Ò¹®ÀÚ·Î ¸¸µç´Ù
RewriteCond   ${lowercase:%{HTTP_HOST}|NONE}  ^(.+)$
#
#   4. vhost.map¿¡¼­ È£½ºÆ®¸íÀ» Ã£°í
#      °æ·ÎÀÏ¶§¸¸ ±â¾ïÇÑ´Ù
#      (À§¿¡¼­ "NONE"Àº ¾Æ´Ï´Ù)
RewriteCond   ${vhost:%1}  ^(/.*)$
#
#   5. ¸¶Áö¸·À¸·Î URLÀ» ¹®¼­ À§Ä¡·Î ´ëÀÀÇÏ°í
#      ·Î±×¿¡ ³²±â±âÀ§ÇØ °¡»óÈ£½ºÆ®¸¦ ±â¾ïÇØ µÐ´Ù
RewriteRule   ^/(.*)$   %1/$1  [E=VHOST:${lowercase:%{HTTP_HOST}}]
    :
</pre></example>
        </dd>
      </dl>

    </section>

  </section>

  <section id="access">

    <title>Á¢±Ù Á¦ÇÑ</title>

    <section>

      <title>·Îº¿ ¸·±â</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¾î¶»°Ô ÇÏ¸é Æ¯Á¤ À¥°ø°£ÀÇ ÆäÀÌÁö¸¦ ±Ü¾î¸ðÀ¸´Â ±ÍÂúÀº
          ·Îº¿À» ¸·À» ¼ö ÀÖ³ª? "Robot Exclusion Protocol" Ç×¸ñÀ»
          ÀúÀåÇÑ <code>/robots.txt</code> ÆÄÀÏÀº º¸Åë ÀÌ·± ·Îº¿À»
          ¸·´Âµ¥ ÃæºÐÇÏÁö ¾Ê´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>(¾Æ¸¶µµ µð·ºÅä¸®°¡ ±í¾î¼­ ·Îº¿ÀÌ µ¹¾Æ´Ù´Ï¸é ¼­¹ö¿¡
          ºÎ´ãÀÌ Å« °æ¿ì) À¥°ø°£ <code>/~quux/foo/arc/</code>¿¡
          ÀÖ´Â URLµéÀ» °ÅºÎÇÏ´Â ±ÔÄ¢À» »ç¿ëÇÑ´Ù. ¿ì¸®´Â Æ¯Á¤
          ·Îº¿ÀÇ Á¢±ÙÀ» ¸·¾Æ¾ß ÇÑ´Ù. Áï, ·Îº¿À» ½ÇÇàÇÏ´Â È£½ºÆ®¸¦
          ¸·´Â °ÍÀ¸·Î´Â ºÒÃæºÐÇÏ¸ç, ±× È£½ºÆ®ÀÇ »ç¿ëÀÚµµ ¸·¾Æ¹ö¸®°Ô
          µÈ´Ù. User-Agent HTTP Çì´õ Á¤º¸µµ ºñ±³ÇÑ´Ù.</p>

<example><pre>
RewriteCond %{HTTP_USER_AGENT}   ^<strong>NameOfBadRobot</strong>.*
RewriteCond %{REMOTE_ADDR}       ^<strong>123\.45\.67\.[8-9]</strong>$
RewriteRule ^<strong>/~quux/foo/arc/</strong>.+   -   [<strong>F</strong>]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>±×¸² ÆÛ°¡±â ¹æÁö</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p><code>http://www.quux-corp.de/~quux/</code>¿¡ ÀÖ´Â
          ÆäÀÌÁöµéÀÌ GIF ±×¸²À» Æ÷ÇÔÇÑ´Ù°í °¡Á¤ÇÏÀÚ. ÀÌ ±×¸²ÀÌ
          ¸ÚÀÖ¾î¼­, ´Ù¸¥ »ç¶÷µéÀÌ ÀÚ½ÅÀÇ ÆäÀÌÁö¿¡ Á÷Á¢ ¸µÅ©¸¦
          °Ç´Ù. ¼­¹ö¿¡ ºÒÇÊ¿äÇÑ ºÎ´ãÀÌ µÇ¹Ç·Î ¸·°í ½Í´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>±×¸²À» 100% º¸È£ÇÒ ¼ö´Â ¾øÁö¸¸, ÃÖ¼ÒÇÑ ºê¶ó¿ìÀú°¡
          HTTP Referer Çì´õ¸¦ º¸³»´Â °æ¿ì Á¦ÇÑÇÒ ¼ö ÀÖ´Ù.</p>

<example><pre>
RewriteCond %{HTTP_REFERER} <strong>!^$</strong>
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule <strong>.*\.gif$</strong>        -                                    [F]
</pre></example>

<example><pre>
RewriteCond %{HTTP_REFERER}         !^$
RewriteCond %{HTTP_REFERER}         !.*/foo-with-gif\.html$
RewriteRule <strong>^inlined-in-foo\.gif$</strong>   -                        [F]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>È£½ºÆ® °ÅºÎ</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¾î¶»°Ô ¿ÜºÎ¿¡¼­ ¼­¹ö¿¡ Á¢±ÙÇÒ ¼ö ¾ø´Â È£½ºÆ® ¸ñ·ÏÀ»
          ¼³Á¤ÇÒ ¼ö ÀÖ³ª?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¾ÆÆÄÄ¡ &gt;= 1.3b6¿¡¼­:</p>

<example><pre>
RewriteEngine on
RewriteMap    hosts-deny  txt:/path/to/hosts.deny
RewriteCond   ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND} !=NOT-FOUND [OR]
RewriteCond   ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND} !=NOT-FOUND
RewriteRule   ^/.*  -  [F]
</pre></example>

          <p>¾ÆÆÄÄ¡ &lt;= 1.3b6¿¡¼­:</p>

<example><pre>
RewriteEngine on
RewriteMap    hosts-deny  txt:/path/to/hosts.deny
RewriteRule   ^/(.*)$ ${hosts-deny:%{REMOTE_HOST}|NOT-FOUND}/$1
RewriteRule   !^NOT-FOUND/.* - [F]
RewriteRule   ^NOT-FOUND/(.*)$ ${hosts-deny:%{REMOTE_ADDR}|NOT-FOUND}/$1
RewriteRule   !^NOT-FOUND/.* - [F]
RewriteRule   ^NOT-FOUND/(.*)$ /$1
</pre></example>

<example><pre>
##
##  hosts.deny
##
##  ÁÖÀÇ! ÀÌ°ÍÀº ¸ñ·ÏÃ³·³ º¸ÀÌÁö¸¸ ¸ñ·ÏÀÌ ¾Æ´Ï¶ó ¸ÊÀÌ´Ù.
##        mod_rewrite´Â ÀÌ Á¤º¸¸¦ Å°/°ª ½ÖÀ¸·Î ÇØ¼®ÇÏ±â¶§¹®¿¡,
##        °¢ Ç×¸ñÀÇ °ª ÀÚ¸®¿¡ ÃÖ¼ÒÇÑ "-"°¡ ÇÊ¿äÇÏ´Ù.
##

193.102.180.41 -
bsdti1.sdm.de  -
192.76.162.40  -
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>ÇÁ·Ï½Ã °ÅºÎ</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>¾î¶»°Ô Æ¯Á¤ È£½ºÆ® È¤Àº Æ¯Á¤ È£½ºÆ®ÀÇ »ç¿ëÀÚ°¡
          ¾ÆÆÄÄ¡ ÇÁ·Ï½Ã¸¦ »ç¿ëÇÒ ¼ö ¾øµµ·Ï ÇÏ³ª?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¸ÕÀú ¾ÆÆÄÄ¡ À¥¼­¹ö¸¦ ÄÄÆÄÀÏÇÒ¶§ ±¸¼ºÆÄÀÏ¿¡¼­
          <module>mod_rewrite</module>°¡ <module>mod_proxy</module>
          ¾Æ·¡¿¡(!) ÀÖ¾î¾ß ÇÑ´Ù. ±×·¯¸é <module>mod_rewrite</module>´Â
          <module>mod_proxy</module> <em>ÀÌÀü¿¡</em> ºÒ¸°´Ù.
          ÀÌÁ¦ ´ÙÀ½°ú °°ÀÌ Æ¯Á¤ È£½ºÆ®¸¦ °ÅºÎÇÏµµ·Ï ¼³Á¤ÇÑ´Ù...</p>

<example><pre>
RewriteCond %{REMOTE_HOST} <strong>^badhost\.mydomain\.com$</strong>
RewriteRule !^http://[^/.]\.mydomain.com.*  - [F]
</pre></example>

          <p>...±×¸®°í ´ÙÀ½Àº user@host¿¡ µû¶ó °ÅºÎÇÑ´Ù:</p>

<example><pre>
RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST}  <strong>^badguy@badhost\.mydomain\.com$</strong>
RewriteRule !^http://[^/.]\.mydomain.com.*  - [F]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>Æ¯º°ÇÑ ÀÎÁõ ¹æ½Ä</title>

      <dl>
        <dt>»óÈ°¼³¸í:</dt>

        <dd>
          <p>°¡²û ¸Å¿ì Æ¯º°ÇÑ ÀÎÁõÀÌ ÇÊ¿äÇÒ ¶§°¡ ÀÖ´Ù. ¿¹¸¦
          µé¾î, ¹Ì¸® ¼³Á¤ÇØµÐ »ç¿ëÀÚÀÎÁö °Ë»çÇÑ´Ù. ÀÌµé¿¡°Ô¸¸
          (<module>mod_auth</module>ÀÇ Basic Auth¸¦ »ç¿ëÇÑ
          °æ¿ì¿Í ´Þ¸®) º°´Ù¸¥ ¹°À½¾øÀÌ Á¢±ÙÀ» Çã¿ëÇÑ´Ù.</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>Ä£±¸¸¸ Á¢±ÙÀÌ °¡´ÉÇÏµµ·Ï ÀçÀÛ¼º ±ÔÄ¢µéÀ» »ç¿ëÇÑ´Ù:</p>

<example><pre>
RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend1@client1.quux-corp\.com$</strong>
RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend2</strong>@client2.quux-corp\.com$
RewriteCond %{REMOTE_IDENT}@%{REMOTE_HOST} <strong>!^friend3</strong>@client3.quux-corp\.com$
RewriteRule ^/~quux/only-for-friends/      -                                 [F]
</pre></example>
        </dd>
      </dl>

    </section>

    <section>

      <title>Referer±â¹Ý º¯È¯±â(deflector)</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>"Referer" HTTP Çì´õ¿¡ µû¶ó ¿øÇÏ´Â´ë·Î ÂüÁ¶ÆäÀÌÁö¸¦
          ¼³Á¤ÇÒ ¼ö ÀÖ´Â À¯¿¬ÇÑ URL º¯È¯±â¸¦ ¸¸µé ¼ö ÀÖ´Â°¡?</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>´ÙÀ½°ú °°ÀÌ º¹ÀâÇÑ ±ÔÄ¢À»...</p>

<example><pre>
RewriteMap  deflector txt:/path/to/deflector.map

RewriteCond %{HTTP_REFERER} !=""
RewriteCond ${deflector:%{HTTP_REFERER}} ^-$
RewriteRule ^.* %{HTTP_REFERER} [R,L]

RewriteCond %{HTTP_REFERER} !=""
RewriteCond ${deflector:%{HTTP_REFERER}|NOT-FOUND} !=NOT-FOUND
RewriteRule ^.* ${deflector:%{HTTP_REFERER}} [R,L]
</pre></example>

          <p>... ÀçÀÛ¼º ¸Ê°ú °°ÀÌ »ç¿ëÇÑ´Ù:</p>

<example><pre>
##
##  deflector.map
##

http://www.badguys.com/bad/index.html    -
http://www.badguys.com/bad/index2.html   -
http://www.badguys.com/bad/index3.html   http://somewhere.com/
</pre></example>

          <p>±×·¯¸é ¿äÃ»À» ÀÚµ¿À¸·Î (¸Ê¿¡¼­ °ªÀ¸·Î "<code>-</code>"¸¦
          »ç¿ëÇÑ °æ¿ì) ÂüÁ¶ÆäÀÌÁö³ª (URLÀÌ ¸Ê¿¡ ÀÖ´Â °æ¿ì µÎ¹øÂ°
          ¾Æ±Ô¸ÕÆ®·Î) Æ¯Á¤ URL·Î ¸®´ÙÀÌ·º¼ÇÇÑ´Ù.</p>
        </dd>
      </dl>

    </section>

  </section>

  <section id="other">

    <title>±âÅ¸</title>

    <section>

      <title>¿ÜºÎ ÀçÀÛ¼º ¿£Áø</title>

      <dl>
        <dt>»óÈ²¼³¸í:</dt>

        <dd>
          <p>FAQ: ¾î¶»°Ô ÀÌ·±Àú·± Àâ´ÙÇÑ ¹®Á¦¸¦ Ç® ¼ö ÀÖ´Â°¡?
          <module>mod_rewrite</module>·Î´Â ÇØ°áÃ¥ÀÌ ¾Èº¸ÀÎ´Ù...</p>
        </dd>

        <dt>ÇØ°áÃ¥:</dt>

        <dd>
          <p>¿ÜºÎ <directive
          module="mod_rewrite">RewriteMap</directive>À» »ç¿ëÇÏ¶ó.
          Áï, ÇÁ·Î±×·¥ÀÌ <directive
          module="mod_rewrite">RewriteMap</directive> ¿ªÇÒÀ»
          ÇÑ´Ù. ÇÁ·Î±×·¥Àº ¾ÆÆÄÄ¡°¡ ½ÃÀÛÇÒ¶§ ½ÃÀÛÇÏ¿©
          <code>STDIN</code>¿¡¼­ ¿äÃ»ÇÑ URLÀ» ¹Þ°í, (°°Àº ¼ø¼­·Î!)
          °á°ú (º¸Åë ÀçÀÛ¼ºµÈ) URLÀ» <code>STDOUT</code>¿¡ Ãâ·ÂÇÑ´Ù.</p>

<example><pre>
RewriteEngine on
RewriteMap    quux-map       <strong>prg:</strong>/path/to/map.quux.pl
RewriteRule   ^/~quux/(.*)$  /~quux/<strong>${quux-map:$1}</strong>
</pre></example>

<example><pre>
#!/path/to/perl

#   ¾ÆÆÄÄ¡ ¼­¹ö°¡ ¸ØÃßÁö ¾Êµµ·Ï
#   ÀÔÃâ·Â ¹öÆÛ¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù
$| = 1;

#   stdin¿¡¼­ ÇÑÁÙ¾¿ URLÀ» ÀÐ°í
#   stdout¿¡ º¯È¯ÇÑ URLÀ» Ãâ·ÂÇÑ´Ù
while (&lt;&gt;) {
    s|^foo/|bar/|;
    print $_;
}
</pre></example>

          <p>¼³¸íÇÏ±âÀ§ÇØ ¸ðµç <code>/~quux/foo/...</code> URLÀ»
          <code>/~quux/bar/...</code>·Î ÀçÀÛ¼ºÇÏ´Â ½ºÅ©¸³Æ®¸¦
          ¿¹·Î µé¾ú´Ù. ½ÇÁ¦·Î ¸¶À½´ë·Î ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖ´Ù.
          ±×·¯³ª ÀÏ¹Ý »ç¿ëÀÚ°¡ ÀÌ·± ¸ÊÀ» <strong>»ç¿ëÇÒ</strong>
          ¼ö ÀÖ´Ù°í ÇÏ´õ¶ó°í, ¿ÀÁ÷ ½Ã½ºÅÛ °ü¸®ÀÚ¸¸ÀÌ ¸ÊÀ»
          <strong>Á¤ÀÇÇØ¾ß</strong> ÇÔÀ» ÁÖÀÇÇÏ¶ó.</p>
        </dd>
      </dl>

    </section>

  </section>

</manualpage>

