 |
|
|  |
[È£½ºÆà ssh »ç¿ëÇϱâ] cgi ¿¡·¯ ÇØ°áÇϱâ |
|
|
 ȨÆäÀÌÁö |
20³â Àü |
1. ÆÄÀÏÀü¼Û ¸ðµå
À©µµ¿ìÁî(Windows 95/98/2000/NT)¸¦ »ç¿ëÇϽô ºÐÀº ÆÞ½ºÅ©¸³Æ®¸¦ FTP·Î ÆÄÀÏÀ» Àü¼ÛÇÒ ¶§ ¹Ýµå½Ã ¾Æ½ºÅ° ¸ðµå·Î ÇؾßÇÕ´Ï´Ù. À¯´Ð½º¿Í µµ½º´Â ÅؽºÆ® ÆÄÀÏÀ» Ç¥ÇöÇÏ´Â Çü½ÄÀÌ ´Ù¸£±â ¶§¹®¿¡ ÆÄÀÏÆ÷¸ËÀ» ¹Ù²ãÁÖ¾î¾ß ÇÕ´Ï´Ù. ¸¸ÀÏ ¹ÙÀ̳ʸ® ¸ðµå·Î Àü¼ÛÇßÀ» °æ¿ì"Internal Sever Error" ¶ó´Â ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÕ´Ï´Ù.
2. ÆÞÀÇ À§Ä¡
ÆÞ½ºÅ©¸³Æ®¿¡´Â Ç×»ó ¸Ç ùÁÙ¿¡ ÆÞ ÇÁ·Î±×·¥À» ¼öÇàÇÒ ¼¹ö ³»ÀÇ ÆÞ °æ·Î¸¦ ÁöÁ¤ÇØ ÁÝ´Ï´Ù. ÆÞ °æ·Î°¡ ¸ÂÁö ¾ÊÀ¸¸é ÇÁ·Î±×·¥À» ¼öÇàÇÒ ¼ö ¾øÀ¸¹Ç·Î ¼¹ö¿¡·¯ ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÕ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì #!/usr/bin/perl ¶Ç´Â #!/usr/local/bin/perlÀÌ¸ç ¼¹öÀÇ Á¾·ù¿¡ µû¶ó ´Ù¸¥ °æ·ÎÀÏ ¼öµµ ÀÖ½À´Ï´Ù.
È®Àιæ¹ýÀº ÅÚ³ÝÀ¸·Î ·Î±äÇϼż 'which perl' ¶Ç´Â 'whereis perl' À̶ó´Â ¸í·É¾î¸¦ ÀÔ·ÂÇÏ°í ¿£ÅÍÅ°¸¦ Ä¡¸é °æ·Î¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÅڳݰèÁ¤ÀÌ ¾ø´Â ºÐÀº ½Ã½ºÅÛ °ü¸®ÀÚ¿¡°Ô ¹®ÀÇÇØ¾ß ÇÕ´Ï´Ù.
3. ÆÛ¹Ì¼Ç ¼³Á¤
ÆÞ½ºÅ©¸³Æ®ÀÇ È®ÀåÀÚ°¡ *.cgi ÀÎ °æ¿ì ½ÇÇà ÆÄÀÏÀ̹ǷΠÀбâ(read)¿Í ½ÇÇà(execute)±ÇÇÑÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ´ÙÀ½Àº Åڳݰú FTP¸¦ ÀÌ¿ëÇÑ ÆÛ¹Ì¼Ç ¼³Á¤ ¹æ¹ýÀÔ´Ï´Ù.
<ÅÚ³Ý>ÀÇ °æ¿ì: 'chmod 755 myscript.cgi' ÀÇ ¸í·É¾î¸¦ ÀÌ¿ëÇϼ¼¿ä.
ÀÇ °æ¿ì: ÆÄÀϼÒÀ¯ÀÚ-Àбâ/¾²±â/½ÇÇà, ±×·ì-Àбâ/½ÇÇà, ´Ù¸¥»ç¿ëÀÚ-Àбâ/½ÇÇà ÀÇ ¸ðµå·Î ÀüȯÇØÁÖ¼¼¿ä.
4. Ư¼ö¹®ÀÚ Ã³¸®
Perl¿¡¼´Â @ $ " ; &µîÀÇ Æ¯¼ö¹®ÀÚµéÀ» ¹®¹ýÀÇ ÀϺηΠ»ç¿ëÇÕ´Ï´Ù. ÆÞ¿¡¼ ¾²´Â Ư¼ö¹®ÀÚ¸¦ ºê¶ó¿ìÁ®¸¦ ÅëÇØ ÀÏ¹Ý ¹®ÀÚ·Î ÀÎ½Ä ½ÃÅ°·Á¸é ¹Ýµå½Ã ¹®ÀÚ ¾Õ¿¡ ¹é½½·¡½¬(backslash, \)¸¦ ºÙ¿©Áà¾ß ÇÕ´Ï´Ù.
°¡Àå ÈçÈ÷ ¿¡·¯°¡ ³ª´Â °æ¿ì´Â ÀüÀÚ¿ìÆí ÁÖ¼Ò, ¿¹¸¦ µé¾î webmaster@tee-gee.co.kr À̸é webmaster\@tee-gee.co.krÀ¸·Î ÇØÁÖ¾î¾ß ÇÏ°í HTML ű׸¦ ¾µ ¶§,
href="http://tee-gee.co.kr"À̸é href=\"http://tee-gee.co.kr\" À¸·Î ÇØÁÖ¾î¾ß ¿¡·¯°¡ ³ªÁö ¾Ê½À´Ï´Ù.
Ư¼ö¹®ÀÚ Ã³¸®³ª ¹®¹ý¿¡ ¿¡·¯°¡ ÀÖÀ» °æ¿ì ã´Â °ÍÀº Çϱâ½ÈÀº ÀÛ¾÷ Áß ÇϳªÀÔ´Ï´Ù. ÀÌ °æ¿ì¿¡ ÅÚ³ÝÀ¸·Î ·Î±äÇؼ perl myscript.cgi ¶ó°í ÀÔ·ÂÇÏ¸é ¿¡·¯°¡ ÀÖ´Â ºÎºÐÀ» Ç¥½ÃÇØÁÝ´Ï´Ù.
5. ÆÄÀÏÀü¼ÛÀÌ Á¦´ë·Î µÇÁö ¾Ê´Â °æ¿ì
¿¡·¯¸Þ¼¼Áö°¡ "prematured script" ¶ó°í Ç¥½ÃµÉ °æ¿ì¿¡´Â ÆÄÀÏÀü¼ÛÀÌ ¼º°øÀûÀ¸·Î µÇÁö ¾ÊÀº °æ¿ìÀÔ´Ï´Ù. ÀÌ °æ¿ì¿¡´Â ÆÄÀÏÀ» ´Ù½Ã Àü¼ÛÇؼ µ¤¾î¾²¸é µÇ°Ú½À´Ï´Ù.
6. CGI Á¢±ÙÀ» Çã¿ëÇÏÁö ¾Ê´Â °æ¿ì
¼¹ö¿¡¼ »ç¿ëÀÚ¿¡°Ô CGI Á¢±ÙÀ» Çã¿ëÇÏÁö ¾Ê´Â °æ¿ìÀÔ´Ï´Ù. ´ëºÎºÐ È£½ºÆþ÷ü´Â CGI Á¢±ÙÀº Çã¿ëÇÒ °æ¿ì´Â PerlÀ» Á¦°øÇÏ°í ¼³Ä¡Á¤º¸¸¦ ¹Ì¸® ¾Ë·ÁÁְųª ȨÆäÀÌÁö¿¡ ¼ö·ÏÇÏ°í ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ» °æ¿ì È£½ºÆÃÀ» ÇÏ´Â ½Ã½ºÅÛ °ü¸®ÀÚ¿¡°Ô ¹®ÀÇÇϽñ⠹ٶø´Ï´Ù.
7. Perl »ç¿ë¿©ºÎ Å×½ºÆ®
- ÀÚ½ÅÀÇ °èÁ¤ÀÇ CGI »ç¿ë¿©ºÎ¸¦ Å×½ºÆ®Çغ¸½Ã·Á¸é test_cgi.txt¸¦ Ŭ¸¯ÇÏ°í ºê¶ó¿ìÁ®¿¡¼ '´Ù¸¥ À̸§À¸·Î ÀúÀå
(save as)'À» ¼±ÅÃÇÏ°í "test.cgi"·Î ÀúÀåÇÕ´Ï´Ù. (ÀͽºÇ÷η¯ »ç¿ëÀڴ Ŭ¸¯ÈÄ ¼Ò½ºº¸±â¸¦ ÇϽʽÿÀ)
- test.cgi ÆÄÀÏÀ» FTP·Î ÀÚ½ÅÀÇ °èÁ¤¿¡ ¾Æ½ºÅ° ¸ðµå·Î ¾÷·Îµå ÇÕ´Ï´Ù.
- test.cgiÀÇ Æ۹̼ÇÀ» 755·Î ¹Ù²ß´Ï´Ù. (chmod 755 test.cgi)
- ºê¶ó¿ìÁ®¿¡¼ Á¤È®ÇÑ URLÀ» ÀÔ·ÂÇÏ°í ¿£ÅÍÅ°¸¦ Ĩ´Ï´Ù.
- ¼¹ö¿¡·¯°¡ ³ª´Â °æ¿ì ÆÞ °æ·Î¸¦ #!/usr/bin/perl ¶Ç´Â #!/usr/local/bin/perl ¹Ù²ã°¡¸é¼ Å×½ºÆ®ÇÕ´Ï´Ù. ±ÝÁö(forbidden)
¸Þ¼¼Áö°¡ ³ª¿À¸é PerlÀ» »ç¿ëÇÒ ¼ö ¾ø°Å³ª »ç¿ëÀÚ µð·ºÅ丮¿¡¼ CGI »ç¿ëÀ» Çã¿ëÇÏÁö ¾Ê´Â °æ¿ìÀÔ´Ï´Ù.
8. PerlÀÇ ¹öÀü ¹®Á¦
ÀÌ·± °æ¿ì´Â µå¹°Áö¸¸ perl¹öÀü ¹®Á¦·Î »ç¿ë ¿¡·¯°¡ »ý±æ¼ö°¡ ÀÖÀ¾´Ï´Ù
ÇØ´ç cgi °¡ ¾î´À ¹öÁ¯À» Áö¿øÇÏ´ÂÁö ¾Ë¾Æ º¸½Ã°í ÇØ´ç À¥È£½ºÆà ¾÷ü¿¡ ¹®ÀÇÇÏ¿© ¾÷±×·¹ÀÌµå ¹Þ¾Æ Çغ¸½Ã±æ ¹Ù¶ø´Ï´Ù
==== ¿¡·¯ ¸Þ¼¼Áö °æ¿ì ¹®Á¦Á¡ ã±â ====
¡í .400 Bad Request
HTTPÀÇ ±Ô¾à¹®¹ý¿¡ ¸ÂÁö ¾ÊÀº ¿äûÀ¸·Î ¹ß»ýÇÏ´Â ¿¡·¯
¡í .401 Unauthorized
À߸øµÈ ID¿Í Æнº¿öµå¸¦ ÀÔ·ÂÇÒ °æ¿ì ¹ß»ýÇÏ´Â ¿¡·¯
¡í .403 Forbidden
CGIÆÄÀÏÀÇ Æ۹̼ǰú ±ÇÇÑÀÌ À߸øµÇ¾îÁ® ÀÖÀ» ¶§ ¹ß»ýÇÏ´Â ¿¡·¯
¡í .404 Not Found
CGI¿äûÇÑ CGIÆÄÀÏÀÌ ÇØ´ç µð·ºÅ丮¿¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§ ¹ß»ýÇÏ´Â ¿¡·¯
¡í .500 Internal Server Error
¼¹ö¿¡ ³»ºÎÀûÀÎ ¿À·ù·Î CGI¸¦ ½ÇÇàÇÒ ¼ö ¾øÀ» ¶§ ¹ß»ýÇÏ´Â ¿¡·¯
¡í .501 Not Implemented
À¥ ºê¶ó¿ìÀú¿¡¼ ¿äûÇÑ Form METHOD°¡ À¥¼¹ö¿¡¼ Çã¿ëÇÑ °ÍÀÌ ¾Æ´Ò ¶§ ¹ß»ýÇÏ´Â ¿¡·¯
¡í .502 Bad Gateway
¿äûÇÑ À¥¼¹ö°¡ ÇÁ¶ô½Ã¼¹ö³ª °ÔÀÌÆ®¿þ¾î¼¹ö·Î ½ÇÇàµÇ°í ÀÖÀ» ¶§ ¹ß»ýµÇ´Â ¿¡·¯
¡í .503 Server Unavailable
À¥ ºê¶ó¿ìÀúÀÇ ¿äûÀ» À¥¼¹ö°¡ ó¸®ÇÏÁö ¸øÇÒ °æ¿ì ¹ß»ýµÇ´Â ¿¡·¯·Î Á¢¼ÓÀÚ°¡ ¸¹°Å³ª ´Ù¸¥
ÀÛ¾÷À¸·Î Áö¿¬µÉ ¶§ ÁÖ·Î ¹ß»ýÇÔ
|
|
̵̧ : 383 |
̵̧
¸ñ·Ï
|
|
|  |
|