Apache HTTP Server Version 2.4

ÀÌ ¹®¼´Â ¿äûÀÇ URLÀ» °¡Áö°í ¾ÆÆÄÄ¡°¡ ¾î¶»°Ô ¼ºñ½ºÇÒ ÆÄÀÏÀÇ ÆÄÀϽýºÅÛ»ó À§Ä¡¸¦ ã´ÂÁö ¼³¸íÇÑ´Ù.

 °ü·ÃµÈ ¸ðµâ°ú Áö½Ã¾îµé
 °ü·ÃµÈ ¸ðµâ°ú Áö½Ã¾îµé DocumentRoot
 DocumentRoot DocumentRoot ¹Û¿¡ ÀÖ´Â ÆÄÀϵé
 DocumentRoot ¹Û¿¡ ÀÖ´Â ÆÄÀϵé »ç¿ëÀÚ µð·ºÅ丮
 »ç¿ëÀÚ µð·ºÅ丮 URL ¸®´ÙÀÌ·º¼Ç(Redirection)
 URL ¸®´ÙÀÌ·º¼Ç(Redirection) ¿ªÇÁ·Ï½Ã(Reverse Proxy)
 ¿ªÇÁ·Ï½Ã(Reverse Proxy) ÀçÀÛ¼º ¿£Áø (Rewriting Engine)
 ÀçÀÛ¼º ¿£Áø (Rewriting Engine) File Not Found
 File Not Found| °ü·ÃµÈ ¸ðµâ | °ü·ÃµÈ Áö½Ã¾î | 
|---|---|
¿äûÀ» ¹ÞÀº ¾ÆÆÄÄ¡´Â ¾î¶² ÆÄÀÏÀ» ¼ºñ½ºÇÒÁö °áÁ¤ÇϱâÀ§ÇØ
    ±âº»ÀûÀ¸·Î ¿äûÀÇ URL-°æ·Î(URL¿¡¼ È£½ºÆ®¸í°ú Æ÷Æ® µÚ¿¡
    ³ª¿À´Â ºÎºÐ)¸¦ ¼³Á¤ÆÄÀÏ¿¡¼ ÁöÁ¤ÇÑ DocumentRoot µÚ¿¡ ºÙÀδÙ. ±×·¡¼
    DocumentRoot ¾Æ·¡ÀÖ´Â
    ÆÄÀϰú µð·ºÅ丮µéÀº À¥¿¡¼ º¸°ÔµÉ ±âº»ÀûÀÎ ³»¿ëÀÌ´Ù.
Á¾Á¾ ÆÄÀϽýºÅÛ¿¡¼ DocumentRoot ¾Æ·¡ ÀÖÁö¾ÊÀº ºÎºÐÀ»
    À¥¿¡¼ Á¢±ÙÇÒ Çʿ䰡 ÀÖ´Ù. ¾ÆÆÄÄ¡´Â ÀÌ °æ¿ì ¿©·¯°¡Áö ¹æ¹ýÀ»
    »ç¿ëÇÒ ¼ö ÀÖ´Ù. À¯´Ð½º ½Ã½ºÅÛ¿¡¼ ½Éº¼¸µÅ©¸¦ »ç¿ëÇÏ¿©
    ÆÄÀϽýºÅÛÀÇ ´Ù¸¥ ºÎºÐÀ» DocumentRoot ¾Æ·¡¿¡ µÑ ¼ö ÀÖ´Ù.
    º¸¾ÈÀ» À§ÇØ ¾ÆÆÄÄ¡´Â ÇØ´ç µð·ºÅ丮ÀÇ Options ¼³Á¤¿¡
    FollowSymLinks³ª
    SymLinksIfOwnerMatch°¡ ÀÖ´Â °æ¿ì¿¡¸¸ ½Éº¼¸µÅ©¸¦
    µû¶ó°£´Ù.
¶Ç, Alias
    Áö½Ã¾î´Â ÆÄÀϽýºÅÛÀÇ Æ¯Á¤ ºÎºÐÀ» À¥°ø°£¿¡ ´ëÀÀÇÑ´Ù. ¿¹¸¦
    µé¾î ´ÙÀ½°ú °°´Ù¸é
Alias /docs /var/web
URL http://www.example.com/docs/dir/file.html˼
    /var/web/dir/file.htmlÀ» °¡Áö°í ¼ºñ½ºÇÑ´Ù.
    ÁöÁ¤ÇÑ °æ·Î¿¡ ÀÖ´Â ¸ðµç ³»¿ëÀ» CGI ½ºÅ©¸³Æ®·Î Ãë±ÞÇÏ´Â °ÍÀ»
    Á¦¿ÜÇϰí´Â ScriptAlias
    Áö½Ã¾îµµ °°Àº ÀÏÀ» ÇÑ´Ù.
AliasMatch¿Í
    ScriptAliasMatch
    Áö½Ã¾îÀÇ °·ÂÇÑ Á¤±ÔÇ¥Çö½Ä±â¹Ý ´ëÀÀ°ú ´ëÄ¡¸¦ »ç¿ëÇÏ¿© ´õ
    À¯¿¬ÇÑ ¼³Á¤ÀÌ °¡´ÉÇÏ´Ù. ¿¹¸¦ µé¾î,
ScriptAliasMatch ^/~([a-zA-Z0-9]+)/cgi-bin/(.+)
      /home/$1/cgi-bin/$2
´Â http://example.com/~user/cgi-bin/script.cgi·ÎÀÇ
    ¿äûÀ» °æ·Î /home/user/cgi-bin/script.cgi·Î
    ´ëÀÀÇϰí, ÇØ´ç ÆÄÀÏÀ» CGI ½ºÅ©¸³Æ®·Î Ãë±ÞÇÑ´Ù.
À¯´Ð½º ½Ã½ºÅÛÀº ÀüÅëÀûÀ¸·Î ƯÁ¤ »ç¿ëÀÚ userÀÇ
    Ȩµð·ºÅ丮¸¦ ~user/·Î ÁöĪÇÑ´Ù.
    mod_userdir ¸ðµâÀº ÀÌ °³³äÀ» À¥¿¡±îÁö
    È®ÀåÇÏ¿©, ´ÙÀ½°ú °°Àº URLÀ» °¡Áö°í °¢ »ç¿ëÀÚ È¨µð·ºÅ丮
    ¾È¿¡ ÀÖ´Â ÆÄÀÏÀ» ¼ºñ½ºÇÑ´Ù.
http://www.example.com/~user/file.html
º¸¾È»ó À¥¿¡¼ »ç¿ëÀÚ È¨µð·ºÅ丮·Î Á÷Á¢ Á¢±ÙÇÒ ¼ö ÀÖÀ¸¸é
    ¾ÈµÈ´Ù. ±×·¡¼ UserDir
    Áö½Ã¾î´Â »ç¿ëÀÚ È¨µð·ºÅ丮¿¡¼ À¥¿ë ÆÄÀϵéÀÌ ÀÖÀ» µð·ºÅ丮¸¦
    ÁöÁ¤ÇÑ´Ù. ±âº» ¼³Á¤ Userdir public_htmlÀ» »ç¿ëÇϰí
    /home/user/°¡ /etc/passwd¿¡ ÁöÁ¤µÈ
    »ç¿ëÀÚ È¨µð·ºÅ丮¶ó¸é, À§ÀÇ URLÀº ÆÄÀÏ
    /home/user/public_html/file.html¿¡ ´ëÀÀÇÑ´Ù.
¶Ç, Userdir Áö½Ã¾î´Â /etc/passwd¿¡
    Ȩµð·ºÅ丮ÀÇ À§Ä¡°¡ ÀúÀåµÇÁö¾Ê´Â ½Ã½ºÅÛÀ» À§ÇØ ¿©·¯ ´Ù¸¥
    ÇüŸ¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
¾î¶² »ç¶÷Àº (º¸Åë À¥¿¡¼ %7e·Î ÀÎÄÚµùµÇ´Â)
    "~" ±âÈ£°¡ ÀÌ»óÇÏ¿© ´Ù¸¥ ¹æ½ÄÀ¸·Î »ç¿ëÀÚ µð·ºÅ丮¸¦ ³ªÅ¸³»°í
    ½Í¾îÇÑ´Ù. ÀÌ ±â´ÉÀº mod_userdirÀÌ Á¦°øÇÏÁö¾Ê´Â´Ù. ±×·¯³ª
    »ç¿ëÀÚ È¨µð·ºÅ丮°¡ ±ÔÄ¢ÀûÀÎ ¹æ¹ýÀ¸·Î ±¸¼ºµÇÀÖ´Ù¸é, AliasMatch Áö½Ã¾î¸¦ »ç¿ëÇÏ¿©
    ¿øÇÏ´Â È¿°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ
    AliasMatch Áö½Ã¾î¸¦ »ç¿ëÇϸé
    http://www.example.com/upages/user/file.htmlÀÌ
    /home/user/public_html/file.html¿¡ ´ëÀÀÇÑ´Ù:
AliasMatch ^/upages/([a-zA-Z0-9]+)/?(.*)
      /home/$1/public_html/$2
¾Õ¿¡¼ ¼³¸íÇÑ ¼³Á¤ Áö½Ã¾îµéÀº ¾ÆÆÄÄ¡°¡ ÆÄÀϽýºÅÛÀÇ Æ¯Á¤
    Àå¼Ò¿¡ ÀÖ´Â ³»¿ëÀ» Ŭ¶óÀÌ¾ðÆ®¿¡°Ô º¸³»°Ô ¸¸µç´Ù. ±×·¯³ª
    ¶§¶§·Î ¿äûÇÑ ³»¿ëÀÌ ´Ù¸¥ URL¿¡ ÀÖ´Ù°í Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¾Ë·ÁÁÖ¾î,
    Ŭ¶óÀÌ¾ðÆ®°¡ »õ·Î ±× URLÀ» ¿äûÇϵµ·Ï ¸¸µå´Â °ÍÀÌ ÁÁÀ» ¶§°¡
    ÀÖ´Ù. À̸¦ ¸®´ÙÀÌ·º¼Ç(redirection)À̶ó°í Çϸç,
    Redirect Áö½Ã¾î¸¦
    »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î, DocumentRoot ¾Æ·¡ /foo/
    µð·ºÅ丮ÀÇ ³»¿ëÀ» »õ·Î /bar/ µð·ºÅ丮·Î ¿Å°å´Ù¸é
    ´ÙÀ½°ú °°ÀÌ Å¬¶óÀÌ¾ðÆ®°¡ »õ·Î¿î À§Ä¡¸¦ ¿äûÇϵµ·Ï ÇÑ´Ù:
Redirect permanent /foo/
      http://www.example.com/bar/
±×·¯¸é www.example.com ¼¹öÀÇ /foo/·Î
    ½ÃÀÛÇÏ´Â URL-°æ·Î´Â /foo/¸¦ /bar/·Î
    ¹Ù²Û URL·Î ¸®´ÙÀÌ·º¼ÇµÈ´Ù. Ŭ¶óÀÌ¾ðÆ®¸¦ ¿ø·¡ ¼¹ö¿Ü¿¡ ¾î¶²
    ´Ù¸¥ ¼¹ö·Îµµ ¸®´ÙÀÌ·º¼ÇÇÒ ¼ö ÀÖ´Ù.
¶Ç, ¾ÆÆÄÄ¡´Â ´õ º¹ÀâÇÑ ÀçÀÛ¼º ¹®Á¦¸¦ À§ÇØ
    RedirectMatch
    Áö½Ã¾î¸¦ Á¦°øÇÑ´Ù. ¿¹¸¦ µé¾î, ´Ù¸¥ ¿äûÀº ±×´ë·Î µÎ°í »çÀÌÆ®
    ȨÆäÀÌÁö¿¡ ´ëÇÑ ¿äû¸¸À» ´Ù¸¥ »çÀÌÆ®·Î ¸®´ÙÀÌ·º¼ÇÇÏ·Á¸é:
RedirectMatch permanent ^/$
      http://www.example.com/startpage.html
Àӽ÷Π»çÀÌÆ®ÀÇ ¸ðµç ÆäÀÌÁö¸¦ ´Ù¸¥ »çÀÌÆ®ÀÇ Æ¯Á¤ ÆäÀÌÁö·Î ¸®´ÙÀÌ·º¼ÇÇÏ·Á¸é:
RedirectMatch temp .*
      http://othersite.example.com/startpage.html
¾ÆÆÄÄ¡´Â ´Ù¸¥ ¼¹ö¿¡ ÀÖ´Â ¹®¼¸¦ ¼¹öÀÇ URL °ø°£À¸·Î °¡Á®¿Ã ¼ö ÀÖ´Ù. ÀÌ °æ¿ì À¥¼¹ö°¡ ¿ø°Ý ¼¹ö¿¡¼ ¹®¼¸¦ °¡Á®¿Í¼ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô Àü´ÞÇÏ´Â ÇÁ·Ï½Ã ¼¹ö¿Í °°ÀÌ µ¿ÀÛÇϱ⶧¹®¿¡ ÀÌ·± ¹æ¹ýÀ» ¿ªÇÁ·Ï½Ã(reverse proxying)¶ó°í ÇÑ´Ù. Ŭ¶óÀ̾ðÆ®ÀÇ ÀÔÀå¿¡¼ ¿ªÇÁ·Ï½Ã ¼¹ö°¡ ¹®¼¸¦ º¸³»ÁÖ´Â °Íó·³ º¸À̹ǷΠÀÏ¹Ý ÇÁ·Ï½Ã¿Í´Â ´Ù¸£´Ù.
¾Æ·¡ ¼³Á¤¿¡¼ Ŭ¶óÀÌ¾ðÆ®°¡ /foo/¿¡ ÀÖ´Â ¹®¼¸¦
¿äûÇϸé, ¼¹ö´Â internal.example.comÀÇ
/bar/ µð·ºÅ丮¿¡¼ ¹®¼¸¦ °¡Á®¿Í¼ ¹®¼°¡ ¸¶Ä¡
¼¹ö¿¡ ÀÖ¾ú´ø °Íó·³ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô º¸³½´Ù.
ProxyPass /foo/ http://internal.example.com/bar/
ProxyPassReverse /foo/ http://internal.example.com/bar/
ProxyPass´Â ¼¹ö°¡
ÀûÀýÇÑ ¹®¼¸¦ °¡Á®¿Àµµ·Ï ¼³Á¤Çϸç, ProxyPassReverse Áö½Ã¾î´Â
internal.example.comÀÌ º¸³»´Â ¸®´ÙÀÌ·º¼ÇÀ» ÀçÀÛ¼ºÇÏ¿©
¸®´ÙÀÌ·º¼ÇÀÌ ÇöÀç ¼¹öÀÇ ÀûÀýÇÑ µð·ºÅ丮¸¦ °¡¸®Å°µµ·Ï ÇÑ´Ù.
¶Ç, ProxyPassReverseCookieDomain°ú
ProxyPassReverseCookieDomain˼
°°Àº ¹æ¹ýÀ¸·Î ¿ø·¡ ¼¹ö°¡ º¸³½ Äí۸¦ ÀçÀÛ¼ºÇÑ´Ù.
±×·¯³ª ¹®¼ ¾È¿¡ ÀÖ´Â ¸µÅ©´Â ÀçÀÛ¼ºÇÏÁö ¾ÊÀ½À» ÁÖÀÇÇ϶ó.
internal.example.com¿¡ ´ëÇÑ Àý´ë¸µÅ©´Â Ŭ¶óÀÌ¾ðÆ®°¡
ÇÁ·Ï½Ã¼¹ö°¡ ¾Æ´Ï¶ó internal.example.comÀ¸·Î Á÷Á¢
¿äûÇÏ°Ô ÇÑ´Ù. Á¦»ïÀÚ°¡ ¸¸µç mod_proxy_html
¸ðµâÀ» »ç¿ëÇÏ¿© HTML°ú XHTML¿¡ ÀÖ´Â ¸µÅ©¸¦ ÀçÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.
´õ °·ÂÇÑ Ä¡È¯ÀÌ ÇÊ¿äÇÒ¶§ mod_rewriteÀÇ
    ÀçÀÛ¼º ¿£ÁøÀÌ µµ¿òÀÌ µÈ´Ù. ÀÌ ¸ðµâÀÇ Áö½Ã¾î´Â ºê¶ó¿ìÀú Á¾·ù³ª
    Ŭ¶óÀ̾ðÆ®ÀÇ IP ÁÖ¼Ò µî ¿äûÀÇ Æ¯Â¡À» °¡Áö°í ¾îµð¿¡ ÀÖ´Â
    ³»¿ëÀ» ¼ºñ½ºÇÒÁö °áÁ¤ÇÒ ¼ö ÀÖ´Ù. ¶Ç, mod_rewrite´Â ¿äûÀ»
    ¾î¶»°Ô ó¸®ÇÒÁö °áÁ¤ÇϱâÀ§ÇØ ¿ÜºÎ µ¥ÀÌÅͺ£À̽º ÆÄÀÏÀ̳ª
    ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀçÀÛ¼º ¿£ÁøÀº À§¿¡¼ ´Ù·é ¼¼
    Á¾·ù ´ëÀÀ, Áï, ³»ºÎ ¸®´ÙÀÌ·º¼Ç (alias), ¿ÜºÎ ¸®´ÙÀÌ·º¼Ç,
    ÇÁ·Ï½Ã, ¸ðµÎ¸¦ Áö¿øÇÑ´Ù. mod_rewrite¸¦ »ç¿ëÇÏ´Â ½ÇÁ¦ ¿¹´Â
    URL Á¦ÀÛ¼º Áöħ¼¿¡¼
    ¼³¸íÇÑ´Ù.
°á±¹ ¿äûÇÑ URL¿¡ ´ëÀÀÇÏ´Â ÆÄÀÏÀ» ÆÄÀϽýºÅÛ¿¡¼ ãÁö ¸øÇÑ °æ¿ìÀÌ´Ù. ¿©·¯ °¡Áö ÀÌÀ¯°¡ ÀÖ´Ù. ¾î¶² °æ¿ì ¹®¼¸¦ ´Ù¸¥ °÷À¸·Î ¿Å°å±â ¶§¹®ÀÏ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì Ŭ¶óÀÌ¾ðÆ®¿¡°Ô URL ¸®´ÙÀÌ·º¼ÇÀ¸·Î ÀÚ¿øÀÇ »õ·Î¿î À§Ä¡¸¦ ¾Ë·ÁÁÖ´Â ¹æ¹ýÀÌ Á¦ÀÏ ÁÁ´Ù. ±×·¯¸é ÀÚ¿øÀ» ¿Å°Üµµ ¿À·¡µÈ ºÏ¸¶Å©³ª ¸µÅ©°¡ °è¼Ó À¯È¿ÇÏ´Ù.
"File Not Found" ¿À·ùÀÇ ´Ù¸¥ ÀϹÝÀûÀÎ ¿øÀÎÀº ºê¶ó¿ìÀú¿¡
    Á÷Á¢ ȤÀº HTML ¸µÅ©¿¡ URLÀÌ À߸ø ÀÔ·ÂµÈ °æ¿ìÀÌ´Ù. ¾ÆÆÄÄ¡´Â
    mod_speling (¸ÂÃã¹ýÀÌ Æ²¸®Áö ¾Ê¾ÒÀ½) ¸ðµâ·Î
    ÀÌ¿Í °°Àº ¹®Á¦¸¦ µ½´Â´Ù. ÀÌ ¸ðµâÀ» »ç¿ëÇϸé "File Not Found"
    ¿À·ù°¡ ¹ß»ýÇÏ´Â °æ¿ì ºñ½ÁÇÑ ÆÄÀϸíÀ» °¡Áø ÀÚ¿øÀ» ã´Â´Ù.
    ¸¸¾à ¹ß°ßÇϸé mod_spelingÀº Ŭ¶óÀÌ¾ðÆ®¸¦ ¿Ã¹Ù¸¥ À§Ä¡·Î
    HTTP ¸®´ÙÀÌ·º¼ÇÇÑ´Ù. "ºñ½ÁÇÑ" ÆÄÀÏÀÌ ¿©·¯°³ ÀÖ´Ù¸é
    Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¸ñ·ÏÀ» º¸³½´Ù.
mod_spelingÀÇ Æ¯È÷ À¯¿ëÇÑ ÀåÁ¡Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö¾Ê°í ÆÄÀϸíÀ» ºñ±³ÇÏ´Â ±â´ÉÀÌ´Ù. ±×·¡¼ À¯´Ð½º ÆÄÀϽýºÅÛ°ú URLÀÇ ´ë¼Ò¹®ÀÚ ¼ºÁúÀ» ¾ËÁö¸øÇÏ´Â »ç¿ëÀÚ°¡ ÀÖ´Â ½Ã½ºÅÛ¿¡ µµ¿òÀÌ µÈ´Ù. ±×·¯³ª mod_spelingÀÌ ÀÚÁÖ URLÀ» °íÃľßÇÑ´Ù¸é, "À߸øµÈ" ¿äû¶§¸¶´Ù URL ¸®´ÙÀÌ·º¼Ç°ú Ŭ¶óÀ̾ðÆ®ÀÇ »õ·Î¿î ¿äûÀÌ ÀϾ¹Ç·Î ¼¹ö¿¡ ºÎ´ãÀÌ µÈ´Ù.
ã´Â ½Ãµµ°¡ ¸ðµÎ ½ÇÆÐÇÏ¸é ¾ÆÆÄÄ¡´Â HTTP status code 404
    (file not found) ¿À·ùÆäÀÌÁö¸¦ º¸³½´Ù. ÀÌ ÆäÀÌÁöÀÇ ³»¿ëÀº
    ErrorDocument Áö½Ã¾î·Î
    Á¶ÀýÇϸç, »ç¿ëÀÚÁ¤ÀÇ ¿À·ù ÀÀ´ä
    ¹®¼¸¦ Âü°íÇÏ¿© »ç¿ëÀÚÁ¤ÀÇÇÒ ¼ö ÀÖ´Ù.