- FTP ·Î ÀÚ½ÅÀÇ °èÁ¤¿¡ Á¢¼ÓÇÑ´ÙÀ½ ¹æ¸í·ÏÀÌ ¼³Ä¡µÇ¾îÀÖ´Â µð·¹Å丮 ·Î
À̵¿ ÇÕ´Ï´Ù.
- message µð·ºÅ丮¿¡ ÀÖ´Â html ÆÄÀÏÀ» ¸ðµÎ ´Ù¿î ¹ÞÀº ´ÙÀ½
ÀÚ½ÅÀÇ pc¿¡¼ ¼öÁ¤ÇϽŴÙÀ½ ´Ù½Ã ¿Ã¸®½Ã¸é µË´Ï´Ù.
CGI»ç¿ë¹ý <
topÀ¸·Î>
CGI ¶õ?
CGI (Common Gateway Interface) ´Â ÇÁ·Î±×·¥À̳ª ½ºÅ©¸³Æ®¸¦
À¥¼¹ö¿¡¼ ½ÇÇàÇÏ°Ô ÇÏ¿© ±× °á °ú¸¦ À¥ÆäÀÌÁö¿¡ º¸¿©ÁÖ´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù. CGI ÈÀÏÀº »ç¿ëÀÚÀÇ À¥»çÀÌÆ®¿¡ ¶Ù¾î³ ±â´ÉÀ» ´õÇØÁÙ ¼ö
ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¿Â¶óÀÎ ÁÖ¹® ó¸®ÆûÀ̳ª °Ë»ö¿£Áø, Ä«¿îÅÍ, ¹æ¸í·Ï, °Ô½ÃÆÇ µîÀÌ ÀÖ½À´Ï´Ù. CGI ÇÁ·Î±×·¥Àº C, C++,
Perl µî ´Ù¾çÇÑ ¾ð¾î·Î ÀÛ¼ºÇϽǼö ÀÖ½À´Ï´Ù.
CGI »ç¿ëÇϱâ
CGI ÇÁ·Î±×·¥Àº ÀÚ½ÅÀÇ html µð·ºÅ丮³ª ±× ÀÌÇÏ
¾î´À µð·ºÅ丮¿¡¼µç ½ÇÇàÀÌ °¡´ÉÇÕ´Ï´Ù. ÇÏÁö¸¸ ÁغñµÇ¾î ÀÖ´Â cgi-bin µð·ºÅ丮¸¦ »ç¿ëÇϽÉÀÌ º¸¾È¿¡ È¿°úÀûÀÔ´Ï´Ù. ¶ÇÇÑ CGI
ÇÁ·Î±×·¥ÀÇ È®ÀåÀÚ´Â ¹Ýµå½Ã .cgi ¸¦ »ç¿ëÇÏ¼Å¾ß À¥¼¹ö°¡ CGI ÇÁ·Î±×·¥À¸·Î ÀνÄÇÏ¿© CGI ÇÁ·Î±×·¥À» Á¤»óÀûÀ¸·Î ½ÇÇàÇÏ°Ô µË´Ï´ÙÀ¥»óÀ¸·Î
È®ÀÎÇÕ´Ï´Ù.
* »çÀ̹ö³ª¶ó¿¡¼ ÀÛ¼ºÇÑ cgi °¡ ¾Æ´Ñ ÀÚ·á´Â »çÀ̹ö³ª¶ó¿¡¼ ¼öÁ¤ÇØ µå¸®Áö ¾Ê½À´Ï´Ù. * ´Ù¿î¹Þ¾Æ ¼³Ä¡ ÇϽôÂ
°æ¿ì °í°´²²¼ Å×½ºÆ®ÇÏ¿© ¼³Ä¡ÇÏ¼Å¾ß ÇÕ´Ï´Ù. * ÀúÈñ ¼¹ö´Â cgi-bin µð·ºÅ丮¿¡¼¸¸ cgi °¡ ½ÇÇàµË´Ï´Ù.
cgi Á¦ÀÛ
ÀÇ·Ú
°í°´ÀÇ È¨ÆäÀÌÁö¿¡ ¿øÇϽô ¾ç½ÄÀÇ ÆûÀ» ¸¸µé¾î ¿Ã¸³´Ï´Ù.
ÀúÈñ¿¡°Ô Àüȳª ¸ÞÀÏ·Î ½ÅûÇϼ¼¿ä. -Á¦ÀÛÀÌ
ºÒ°¡´ÉÇÒ °æ¿ìµµ ÀÖÀ¸¸ç ÀÌ °æ¿ì ¿¬¶ôÀ» µå¸³´Ï´Ù. Á¦ÀÛ¿Ï·áÈÄ ÀúÈñ°¡ ¿¬¶ôÀ» µå¸®¸ç À¥¿¡¼ Å×½ºÆ®¸¦ ÇØ º¸¼¼¿ä. ¿ù ȸºñ ÀԱݶ§ cgi
Á¦ÀÛºñ¸¦ Æ÷ÇÔÇϼż ³³ºÎÇØÁÖ¼¼¿ä. °í°´ÀÌ Á÷Á¢ cgi ÇÁ·Î±×·¥ ÀÛ¼ºÀÇ °æ¿ì
¼¹öÀÇ perl ¾ð¾î À§Ä¡´Â ´ÙÀ½°ú °°½À´Ï´Ù.
-> "/usr/bin/perl" cgi ¿¡ °üÇÑ Ã¥À̳ª perl5 ¾ð¾î¿¡ °üÇÑ Ã¥µéÀÌ ½ÃÁß¿¡ ¸¹ÀÌ ³ª¿À°í ÀÖ½À´Ï´Ù. Çâ»óµÈ
cgi ¾ð¾îÀÎ perl5 °¡ º» ¼¹ö¿¡ žÀçµÇ¾î ÀÖÀ¸¹Ç·Î À̸¦ °øºÎÇϽøé ÀúÈñ ¼¹ö¿¡¼ »ç¿ë ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
ÁÖ¹®¼, ½Åû¼
µî ´ëÈÇü ÆäÀÌÁö ¸¸µé±â html ¹®¼¿¡ form Çü½ÄÀ» ÀÛ¼ºÇÕ´Ï´Ù. - ÀÏ¹Ý html ¿¡ °üÇÑ Ã¥(ȤÀº ÀÚ·á) ÂüÁ¶ form
Çü½Ä¿¡ ¸ÂÃç cgi ¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ftp ·Î ÀÛ¼ºÇϽŠhtml °ú cgi ÈÀÏÀ» Àü¼ÛÇÕ´Ï´Ù. (¹Ýµå½Ã ASCII ¸ðµå·Î
Àü¼ÛÇϼ¼¿ä) ÅÚ³ÝÀ¸·Î °í°´ÀÇ »çÀÌÆ®¿¡ Á¢¼ÓÇÕ´Ï´Ù. ¾÷·ÎµåÇϽŠµð·ºÅ丮·Î À̵¿ÇÕ´Ï´Ù. ¾÷·ÎµåÇϽŠcgi ÈÀÏÀÇ Æ۹̼ÇÀ» 755·Î
º¯°æÇÕ´Ï´Ù. (chmod 755 ***.cgi)
cgi »ç¿ë½Ã ÁÖÀÇ»çÇ×
äÆÃ¹æ ±â´ÉÀÇ cgi ÇÁ·Î±×·¥Àº Çã¿ëµÇÁö
¾Ê½À´Ï´Ù. ÀúÈñ ¼¹ö¿¡¼ äÆÃ¹æ ¿î¿µÀÌ È®ÀÎ µÉ °æ¿ì 1Â÷ °æ°í ÈÄ Á÷±ÇÀ¸·Î holding ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ±èÃæ°ï´ÔÀÌ ¸¸µç äÆùæ
2.0 ÇÁ·Î±×·¥Àº ½ÇÇàµÇ¸é ¸ðµç ¼¹öÀÚ¿øÀ» µ¶½ÄÇÏ¿© ´Ù¸¥»ç¶÷ÀÇ ¼¹öÀÌ¿ëÀ» ¸·¾Æ ¹ö¸®°í ¼¹ö´Ù¿îÀÇ °á°ú°¡ ³ªÅ¸³³´Ï´Ù. ÀÌ¿Í °°Àº cgi
ÇÁ·Î±×·¥Àº Àý´ë ¼³Ä¡ ¿î¿µÇÏ½Ã¸é ¾ÈµË´Ï´Ù.
¶ÇÇÑ ´ëºÎºÐÀÇ Ã¤Æà cgi ÇÁ·Î±×·¥Àº ÀÚü ¼¹ö¸¦ »ç¿ëÇÏ¿© °¡µ¿Çϼžß
ÇÕ´Ï´Ù. ÀúÈñ´Â ¸¹Àº »ç¶÷ÀÌ ÇѼ¹ö¸¦ °ø¿ëÀ¸·Î »ç¿ëÇϹǷΠÀÌ ±ÔÁ¤Àº ¹Ýµå½Ã ÁöÄÑÁÖ¼Å¾ß ÇÕ´Ï´Ù. ±× ¿Ü¿¡µµ À߸ø ¸¸µé¾îÁø cgi ÀÇ
°æ¿ì ¼¹ö¿¡ Ä¡¸íÀûÀÎ ¿µÇâÀ» ÁְԵǹǷΠ°øÀÎµÈ cgi ÇÁ·Î±×·¥ »ç¿ëÀ» ºÎŹµå¸³´Ï´Ù. ¾à°£ÀÇ cgi ¿¡ ´ëÇÑ Áö½ÄÀÌ ÀÖÀ¸¼Å¾ß ¼³Ä¡¿Í ¿î¿µÀÌ
°¡´ÉÇϽùǷΠ°øºÎ¸¦ Çϼż ¿øÇϽô´ë·Î ´ëÈÇü ȨÆäÀÌÁö¸¦ ¸¸µå¼Å¼ À¯ÀÍÇÑ »çÀÌÆ®¸¦ ¸¸µå¼¼¿ä.
CGI ¿¡·¯
´ëÃ¥
1. CGI ½ºÅ©¸³Æ®´Â ¹Ýµå½Ã È®ÀåÀÚ°¡ .cgiÀ̾î¾ß ÇÕ´Ï´Ù.
2.½ºÅ©¸³Æ®´Â html µð·ºÅ丮³ª ±× ÀÌÇÏ
µð·ºÅ丮¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. -CGIÆÄÀÏÀÇ À§Ä¡ °í°´°èÁ¤ÀÇ cgi-bin µð·ºÅ丮³»¿¡ À§Ä¡ÇÏ¿©¾ßÇÔÀ»
¿øÄ¢À¸·ÎÇϳª (/home/µµ¸ÞÀθí/cgi-bin/ ) cgi ÀÇ Á¾·ù¿¡ µû¶ó ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù. °í°´°èÁ¤ÀÇ cgi-bin µð·ºÅ丮³»¿¡
¼³Ä¡ÇÑ µÚ ½ÇÇàÀÌ Àß ¾ÈµÇ´Â cgi ´Â cgi-bin µð·ºÅ丮¹Û¿¡ µû·Î µð·ºÅ丮¸¦ ¸¸µå¼Å¼ »ç¿ëÇϽñ⠹ٶø´Ï´Ù. ´Ü, Crazy
°Ô½ÃÆÇ/¹æ¸í·Ï µîÀº µû·Î µð·ºÅ丮¸¦ ¸¸µå¼Å¼ »ç¿ëÇÏ¼Å¾ß ÇÕ´Ï´Ù. [°ø¿ë cgi-bin] À¥»ó¿¡¼ÀÇ °æ·Î :
http://µµ¸ÞÀθí/cgi-bin/ (¿¹: µµ¸ÞÀθíÀÌ freeweb.co.kr Àΰæ¿ì
http://www.freeweb.co.kr/cgi-bin/) [°í°´Àü¿ë cgi-bin] À¥»ó¿¡¼ÀÇ °æ·Î :
http://µµ¸ÞÀθí/aaa.cgi (¿¹: http://www.freeweb.co.kr/freeweb/) ½ÇÁ¦°æ·Î :
/home/µµ¸ÞÀθí/cgi-bin/
3.Perl ½ºÅ©¸³Æ®´Â ¹Ýµå½Ã ASCII¸ðµå·Î ¾÷·Îµå ÇÏ¼Å¾ß ÇÕ´Ï´Ù.
4.Perl ½ºÅ©¸³Æ®ÀÇ °¡Àå ÀÁÙ¿¡ perlÀÇ °æ·Î°¡ ´ÙÀ½°ú °°¾Æ¾ß ÇÕ´Ï´Ù. #!/usr/local/bin/perl ȤÀº
#!/usr/bin/perl
5.CGI ½ºÅ©¸³Æ®´Â ¹Ýµå½Ã ½ÇÇà°¡´ÉÇÑ Æ۹̼ÇÀ¸·Î º¯°æÇÏ¿© ÁÖ¾î¾ß ÇÕ´Ï´Ù. À¯´Ð½º ÇÁ·ÒÇÁÆ®¿¡¼
´ÙÀ½°ú °°ÀÌ ½ÇÇàÇØ ÁֽʽÿÀ. % chmod 755 filename.cgi
6.CGI ½ºÅ©¸³Æ®¿¡ ÀÇÇØ ÆÄÀϾ²±â°¡ ÀÌ·ç¾îÁú
ÈÀÏÀº ¸ðµç»ç¶÷¿¡°Ô ¾²±â°¡ Çã¿ëµÇ¾î¾ß ÇÕ´Ï´Ù. % chmod 777 filename.html
7.CGI ½ºÅ©¸³Æ®¿¡
ÀÇÇØ ÆÄÀÏÀÌ »ý¼ºµÇ¾îÁú µð·ºÅ丮µµ ¸ðµç»ç¶÷¿¡°Ô ¾²±â°¡ Çã¿ëµÇ¾î¾ß ÇÕ´Ï´Ù. % chmod 777 directory_name
8.¸¸¾à À¥»ó¿¡¼ ½ºÅ©¸³Æ®°¡ ½ÇÇàÀÌ ¾ÈµÈ´Ù¸é, ½ºÅ©¸³Æ®¸¦ ´ÙÀ½°ú °°ÀÌ ½ÇÇàÇØ º¸½Ê½Ã¿À. % perl
filename.cgi
9.C ÇÁ·Î±×·¥ ÄÄÆÄÀÏ ¹æ¹ý % gcc -o test.cgi test.c ¸¸¾à ÇÁ·Î±×·¥ ¹®¹ýÀ̳ª
ÄÚµù¿¡ ¿¡·¯°¡ ÀÖ´Ù¸é ÇØ´ç ¿¡·¯¸Þ½ÃÁö°¡ Ãâ·ÂµË´Ï´Ù. ¿¡·¯¸Þ½ÃÁö¸¦ ÂüÁ¶ÇÏ¿© ¼Ò½º¸¦ ¼öÁ¤ÇÏ¿© ÁֽʽÿÀ. ½ºÅ©¸³Æ®°¡ À¯´Ð½º»ó¿¡¼´Â Àß
µÇ³ª, À¥»ó¿¡¼´Â µÇÁö ¾ÊÀ»¶§´Â ÈÀÏÀ̳ª µð·ºÅ丮ÀÇ Æ۹̼ÇÀ» »ìÆìÁֽʽÿÀ.
10.HTML³» »ç¿ë¹æ¹ý
<form>ű׿¡¼ ¾Æ·¡¿Í °°ÀÌ »ç¿ëÇÏ¸é µË´Ï´Ù. ACTION=
"http://www.freeweb.co.kr/cgi-freeweb/formmail.cgi" METHOD="POST"
cgi
¿¡·¯ ã±â
Perl ½ºÅ©¸³Æ®ÀÇ ¿¡·¯¸¦ ã´Â ¶Ç ÇÑ°¡Áö ¹æ¹ýÀº ÇØ´ç ½ºÅ©¸³Æ® Äڵ峻ÀÇ Ã¼Å©ÇÏ°íÀÚ ÇÏ´Â ºÎºÐ¿¡ ´ÙÀ½°ú °°Àº
³»¿ëÀ» ÷°¡ÇÏ¿© º¸½Ã±â ¹Ù¶ø´Ï´Ù. print "Content-type: text/html\n\n\n"; print
"<h1>¿©±â±îÁö´Â ¿¡·¯°¡ ¾ø½À´Ï´Ù.</h1>"; exit;
À¥ºê¶ó¿ìÀú »ó¿¡¼ ÇØ´ç cgi¸¦ ½ÇÇàÇÏ¿©,
¸¸¾à "¿©±â±îÁö´Â ¿¡·¯ ¾ø½À´Ï´Ù." ¶ó´Â ±ÛÀÌ ºê¶ó¿ìÀú»ó¿¡ º¸ÀÎ´Ù¸é ½ºÅ©¸³Æ®³»ÀÇ À§ÀÇ ³»¿ëÀÌ ÀÖ´Â ºÎºÐ±îÁö´Â Á¤»óÀûÀ¸·Î ½ÇÇàµÈ´Ù´Â
ÀǹÌÀÔ´Ï´Ù. ´ÙÀ½À¸·Î À§ÀÇ ³»¿ëÀ» Á» ´õ ¾Æ·¡¿¡ À§Ä¡ÇÏ¿© Å×½ºÆ®ÇØ º¸½Ê½Ã¿À. ¸¸¾à À§ÀÇ ¸Þ½ÃÁö°¡ ³ª¿ÀÁö ¾Ê´Â´Ù¸é, ±× ÀÌÀü¿¡
¿¡·¯°¡ ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. À§ÀÇ ³»¿ëÀ» Á» ´õ ¿Ã·Á¼ ¿¡·¯°¡ ÀÖ´Â À§Ä¡¸¦ ã¾Æ³»½Ã±â ¹Ù¶ø´Ï´Ù.
|