• ÇÁ¸®Ä«¿îÅÍ
  • Ç÷¡½ÃºÏ
  • ÇÁ¸®º¸µå
  • Àü±¤ÆÇ
  • À¥°øºÎ¹æ
  • Ä¿¹Â´ÏƼ
apache Rewrite Rule ¼³Á¤½Ã ÁÖÀÇÁ¡(.htaccess °¡ ÀÛµ¿ÇÏÁö ¾ÊÀ»¶§) | 2008.04.17 10:15
±Û¾´ÀÌ : ¿î¿µÀÚ Á¶È¸ : 254 Ãßõ : 0
apache ¸¦ À¥¼­¹ö·Î »ç¿ëÇÑ´Ù¸é,  rewrite rule À» »ç¿ëÇÏ°í Àְųª, »ç¿ëÇغÃÀ» °ÍÀÌ´Ù.
ºí·Î±× Åø·Î ¸¹ÀÌ ¾²´Â Å×ÅÍÅøÁîµµ rewrite rule À» »ç¿ëÇÏ°í ÀÖ´Ù.

¿ä±Ù·¡¿¡´Â Fancy URL À̶ó°í ÇÏ¿©, URL ÀÌ º¹ÀâÇÏ°Ô µÇ´Â °ÍÀ» ¹æÁöÇϱâ À§ÇØ ¸¹ÀÌ ¾²ÀÌ´Â ÆíÀÌ´Ù.

Å©°Ô rewrite rule ÀÌ Àû¿ëµÇ´Â °ÍÀ» »ìÆ캸¸é,

1. ¸ðµâ·Îµù ( rewrite ¸ðµâÀ» apache °¡ ÀоîµéÀ̵µ·Ï ÇÑ´Ù.)
2. apache ¼³Á¤ ( virtual host )
3. .htaccess ¼³Á¤
À¸·Î º¼ ¼ö ÀÖ´Ù.

1. Rewrite ¸ðµâ·Îµù
¹èÆ÷ÆÇ ¸¶´Ù apache ¼³Á¤ ÆÄÀÏÀÇ À§Ä¡°¡ ´Ù¸£±ä ÇÏÁö¸¸, ´ÙÀ½°ú °°Àº Ç׸ñÀ» Æ÷ÇÔÇÑ´Ù.
(ubuntu / debian °è¿­Àº /etc/apache2/mods-enabled ¿¡ ¼³Á¤ÇÑ´Ù.)

¸ðµâ ¼³Á¤ Ç׸ñÀº

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
¿Í °°Àº Ç׸ñÀÌ´Ù.

2. apache conf ¼³Á¤

º¸Åë ÀϹÝÀûÀÎ ¼³Á¤ÀÌ´Ù.(Virtual Host »ç¿ë)


   ServerAdmin webmaster@yourdomain.co.kr
   DocumentRoot /user/yourdomain.co.kr/
   ServerName yourdomain.co.kr
   ServerAlias www.yourdomain.co.kr
   ErrorLog logs/yourdomain.co.kr-error_log
   CustomLog logs/yourdomain.co.kr-access_log combined

À̶§ Rewrite rule À» Virtual host Ç׸ñ¿¡ Á÷Á¢ ½á ³ÖÀ» ¼ö ÀÖ´Ù.
±×·¯³ª, º¸Åë ´ÙÀ½¿¡ À̾߱âÇÒ .htaccess ÆÄÀÏÀ» »ç¿ëÇÑ´Ù.(ÅÂÅÍÅøÁîµµ ÀÌ ¹æ¹ýÀ» »ç¿ë)

3. .htaccess ¿¡ rule ¼³Á¤

¼³Á¤ÇÏ·Á´Â µµ¸ÞÀÎÀÇ DocumentRoot ¿¡ .htaccess ÆÄÀÏÀ» ¸¸µé°í rule À» ¼³Á¤ÇÑ´Ù.
(À§ÀÇ ¿¹¿¡¼­´Â /user/yourdomain.co.kr/.htaccess °¡ µÇ°Ú´Ù)

ÈçÈ÷ »ç¿ëÇÏ´Â rule Çϳª¸¦ ¿¹¸¦ µé¸é..

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} /demo/([a-z0-9_-]+)$
RewriteRule demo/(.*) /demo/index.php?key=$1 [R,L]
yourdomain.co.kr/demo/keyname  Çü½ÄÀ¸·Î Á¢¼ÓÇϸé,
yourdomain.co.kr/demo/index.php?key=keyname  À¸·Î rewrite ÇØÁÖ´Â rule ÀÌ´Ù.

º¸Åë  ProcessFile?key=aaa&key2=bbb  Ã³·³  URL ÀÌ º¹ÀâÇØÁö´Â °ÍÀ» ÁÙÀÌ´Â ¿ëµµ·Î »ç¿ëÇÑ´Ù.


# À̶§ .htaccess ÆÄÀÏÀ» ¼³Á¤Çߴµ¥, Rule ÀÌ ÀÛµ¿ÇÏÁö ¾Ê´Â °æ¿ì

¾Ë¾Æ µÎ¾î¾ß ÇÒ °ÍÀº .htaccess ÆÄÀÏÀ» »ç¿ëÇÏ·Á¸é,
AllowOverride  Ç׸ñÀÌ 'None' ÀÌ»ó(?)À̾î¾ß ÇÑ´Ù.(À̺κÐÀº È®ÀÎÇÊ¿ä)

À̰͵µ ¹èÆ÷ÆÇ ¸¶´Ù ´Ù¸¦ °ÍÀÌ´Ù.

ubuntu ÀÎ °æ¿ì   °¡ AllowOverride none À¸·Î ¼³Á¤µÇ¾î ÀÖ´Ù.

µû¶ó¼­ .htaccess ¸¦ »ç¿ëÇϱâ À§Çؼ­´Â À§ÀÇ Virtual Host ¼³Á¤ÅÇ »çÀÌ¿¡ ´ÙÀ½Ã³·³ Ãß°¡ÇÑ´Ù.


AllowOverride all

ÀÚ¼¼ÇÑ ¿É¼ÇÀº ´ÙÀ½À» ÂüÁ¶ÇÑ´Ù .

Ȥ½Ã Rewrite Rule À» ¼³Á¤ÇÒ¶§, .htaccess ¿¡ ÀÖ´Â ¼³Á¤ÀÌ Àû¿ëµÇÁö ¾Ê´Â´Ù¸é, À§ ºÎºÐÀ» È®ÀÎÇØ º»´Ù.
 »çÀÌ¿¡ .htaccess ¿¡ ¼³Á¤µÈ Rule À» Á÷Á¢ ÀÔ·ÂÇÏ¸é µÇ´Âµ¥,
.htaccess ·Î ÇÏ´Â °æ¿ì ¾ÈµÈ´Ù¸é À§ÀÇ ¹®Á¦ÀÏ °¡´É¼ºÀÌ ¸¹´Ù.

À§ AllowOverride ¼³Á¤À» ¸Ç »óÀ§µð·ºÅ丮(/user ³ª /)¿¡ ¼³Á¤À» Çصµ µÇÁö¸¸,
±×·±°æ¿ì  /user/.htaccess  /user/otherdomain/.htaccess µîÀ» ¸ðµÎ ãÀ¸·Á Çϱ⠶§¹®¿¡ ¼ÓµµÀúÇÏ°¡ ÀÖÀ» ¼ö ÀÖ´Ù.
²À ÇÊ¿äÇÑ °æ¿ì¿¡ ÇØ´ç À§Ä¡¿¡¸¸ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁÀ» µí ÇÏ´Ù.


# ÂüÁ¶
http://httpd.apache.org/docs/2.0/ko/howto/htaccess.html
http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
ÀλýÀº ª½À´Ï´Ù.
±×·¯¹Ç·Î ´Ù¸¥ »ç¶÷ÀÌ ¿ä±¸ÇÏ´Â »îÀ» »ì¸é¼­ ½Ã°£À» ³¶ºñÇؼ­´Â ¾È µË´Ï´Ù.
µ·°ú ¸í¿¹¸¦ ¾òÁö ¸øÇÏ´õ¶óµµ ³¡±îÁö ÀÚ½ÅÀÇ ±æÀ» °íÁýÇϽʽÿÀ
¸ñ·Ï À­±Û ¾Æ·§±Û
³»¾Ë FREECOUNT.NET ÇÁÄ«³Ý »ý±ä³¯ 2003.12.20 Ȩ | Ä«¿îÅÍ | Ç÷¡½ÃºÏ | ÇÁ¸®º¸µå | Àü±¤ÆÇ | À¥°øºÎ¹æ | Ä¿¹Â´ÏƼ | ÂÊÁöÇÔ