<-
Apache > HTTP Server > Documentation > Version 2.0

CGI ȯ°æ¿¡¼­ PATH_INFOÀÇ º¯È­

¾ÆÆÄÄ¡ 1.1.1°ú ±× ÀÌÀü ¹öÀüÀÇ °æ¿ì CGI ȯ°æ¿¡¼­ PATH_INFO¸¦ ¸¸µå´Â ¹æ¹ýÀÌ Á÷°üÀûÀÌÁö ¾Ê°í ¾î¶² °æ¿ì ¼­¹ö¸¦ Á×À̱⵵ Çß´Ù. ¾ÆÆÄÄ¡ 1.2 ÀÌÈÄ ÀÌ ¹æ¹ýÀÌ º¯Çß´Ù. ±âÁ¸ÀÇ ¾î¶² CGI ÇÁ·Î±×·¥µé°ú ¾à°£ÀÇ È£È¯¹®Á¦°¡ ÀÖÁö¸¸ ¾ÆÆÄÄ¡ 1.2ÀÇ ÇൿÀº ¾ÆÁ÷µµ CGI/1.1 ±Ô¾àÀ» ¹ù¾î³ªÁö¾ÊÀ¸¸ç, ½±°Ô CGI ½ºÅ©¸³Æ®¸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. (¾Æ·¡ Âü°í)

top

¹®Á¦Á¡

¾ÆÆÄÄ¡ 1.1.1°ú ±× ÀÌÀü ¹öÀüÀº URL ´ë½Å ÆÄÀϸíÀ» °¡Áö°í PATH_INFO¿Í SCRIPT_NAME ȯ°æº¯¼ö¸¦ ±¸ÇöÇß´Ù. ¸¹Àº °æ¿ì ¿Ã¹Ù¸¥ °á°ú¸¦ ¾òÁö¸¸, ÆÄÀϽýºÅÛ °æ·Î°¡ path Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù¸é À߸øµÈ °á°ú°¡ ³ª¿Ã ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ¼³Á¤ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ³»¿ëÀÌ ÀÖ´Ù¸é:

Alias /cgi-ralph /usr/local/httpd/cgi-bin/user.cgi/ralph

ÀÌ °æ¿ì user.cgi´Â CGI ½ºÅ©¸³Æ®ÀÌ°í, "/ralph"´Â CGI¿¡ ³Ñ°ÜÁö´Â Á¤º¸´Ù. ÀÌ °æ¿ì "/cgi-ralph/script/"·Î ¿äûÀÌ µé¾î¿À¸é PATH´Â "/ralph/script"°¡ µÇ°í, SCRIPT_NAMEÀº "/cgi-"°¡ µÈ´Ù. ÈÄÀÚ´Â ºÐ¸íÈ÷ À߸øµÇ¾ú´Ù. ½ÉÁö¾î ¾î¶² °æ¿ì ¼­¹ö°¡ Áױ⵵ ÇÑ´Ù.

top

ÇØ°áÃ¥

¾ÆÆÄÄ¡ 1.2 ÀÌÈÄ¿¡¼­´Â URL¿¡¼­ Ŭ¶óÀ̾ðÆ®°¡ Á¶Àý°¡´ÉÇÑ ºÎºÐÀ» ÆÇ´ÜÇÏ¿© SCRIPT_NAME°ú PATH_INFO¸¦ ¼³Á¤ÇÑ´Ù. À§ÀÇ ¿¹¿¡¼­ PATH_INFO´Â "/script"°¡ µÇ°í, SCRIPT_NAMEÀº "/cgi-ralph"°¡ µÈ´Ù. ÀÌ´Â ÇÕ¸®ÀûÀÌ¸ç ¼­¹ö¿¡ ¹®Á¦¸¦ ÀÏÀ¸Å°Áö ¾Ê´Â´Ù. ¶Ç, ÀÌÀü ¹öÀü°ú ´Þ¸® ½ºÅ©¸³Æ®¿¡¼­ "http://$SERVER_NAME:$SERVER_PORT$SCRIPT_NAME$PATH_INFO"°¡ ÇöÀç ½ºÅ©¸³Æ®¸¦ °¡¸®Å°´Â URLÀÓÀ» º¸ÀåÇÒ ¼ö ÀÖ´Ù.

±×·¯³ª ºÒÇàÈ÷µµ Alias Áö½Ã¾îÀÇ "/ralph" Á¤º¸´Â »ç¶óÁø´Ù. ±×·¯³ª ¿ì¸®´Â ÆÄÀϽýºÅÛÀ» »ç¿ëÇÏ¿© ÀÌ·± Á¤º¸¸¦ ³Ñ°ÜÁÖ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÑ ¹æ¹ýÀÌ ¾Æ´Ï¸ç, À̸¦ »ç¿ëÇÏ´Â ½ºÅ©¸³Æ®´Â ÀÛµ¿ÇÒ"¸¸ÇÏÁö" ¾Ê´Ù°í »ý°¢ÇÑ´Ù. ±×·¯³ª ¾ÆÆÄÄ¡ 1.2b3 ÀÌÈÄ¿¡´Â ÀÌ¿¡ ´ëÇÑ ÇØ°áÃ¥ÀÌ ÀÖ´Ù.

top

ÀÌÀü ¼­¹ö¿Í ȣȯ¼º

¾ÆÆÄÄ¡ ÀÌÀü ¹öÀüÀ̳ª ´Ù¸¥ ¼­¹ö¿ëÀ¸·Î ¼³°èµÈ ½ºÅ©¸³Æ®´Â ÀÌÀü PATH_INFO º¯¼ö°¡ Á¦°øÇß´ø Á¤º¸°¡ ÇÊ¿äÇÒ ¼ö ÀÖ´Ù. ±×·¡¼­ ¾ÆÆÄÄ¡ 1.2 (1.2b3 ÀÌÈÄ)´Â FILEPATH_INFO¶ó´Â º¯¼ö¸¦ ´õ ¼³Á¤ÇÑ´Ù. ÀÌ È¯°æº¯¼ö´Â ¾ÆÆÄÄ¡ 1.1.1ÀÇ PATH_INFO °ªÀ» °¡Áø´Ù.

½ºÅ©¸³Æ®°¡ ¾ÆÆÄÄ¡ 1.2¿Í ÀÌÀü ¹öÀü ¸ðµÎ¿¡¼­ µ¿ÀÛÇÏ°ÔÇÏ·Á¸é, ¸ÕÀú FILEPATH_INFO°¡ ÀÖ´ÂÁö °Ë»çÇÏ°í ÀÖ´Ù¸é ±×°ÍÀ» »ç¿ëÇÑ´Ù. ¾ø´Ù¸é PATH_INFO¸¦ »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î, Perl·Î´Â ´ÙÀ½°ú °°´Ù:

$path_info = $ENV{'FILEPATH_INFO'} || $ENV{'PATH_INFO'};

ÀÌ·¸°Ô ÇÏ¸é ¸ðµç ¾ÆÆÄÄ¡¸¦ Æ÷ÇÔÇÏ¿© CGI/1.1 ±ÔÁ¤À» µû¸£´Â ¸ðµç ¼­¹ö¿¡¼­ ½ºÅ©¸³Æ®°¡ µ¿ÀÛÇÒ ¼ö ÀÖ´Ù.