»ç¿ëÇü½Ä
CGI.pmÀ» »ç¿ëÇϱâÀ§Çؼ´Â CGI ÇÁ·Î±×·¥¿¡¼ ¹Ýµå½Ã ´ÙÀ½°ú °°Àº ¹®ÀåÀ» ¼öÇàÇØ¾ß ÇÑ´Ù.
Use CGI;
CGI.pmÀ» PerlÀÇ Ç¥ÁØ Library·Î ¼³Ä¡ÇÏÁö ¾ÊÀº °æ¿ì¿¡´Â @INC¿¡ ¼³Ä¡ÇÑ µð·ºÅ丮¸¦ Ãß°¡½ÃÄÑ ÁÖ¾î¾ß ÇÑ´Ù. Áï,
BEGIN {
unshift(@INC, '/home/artech/public_html/cgi-bin');
}
Use CGI;
¿©±â¼ BEGINÀº ´Ù¸¥ ¾î¶² °Íº¸´Ùµµ BEGIN ºí·°À» ¸ÕÀú ¼öÇàÇ϶ó´Â ÀǹÌÀÌ´Ù. @INC¿¡ µð·ºÅ丮¸¦ Ãß°¡ÇÒ ¶§ unshift ´ë½Å¿¡ pushÀ» »ç¿ëÇصµ µÈ´Ù.
°£´ÜÇÑ ¿¹
#!/usr/local/bin/perl
# Æû¹®¼¸¦ »ý¼ºÇϸç
# ÆûÀÇ ÀÔ·ÂÀ» ´Ù½Ã Ãâ·ÂÇÏ´Â CGI
use CGI qw/:standard/;
print header,
start_html('°£´ÜÇÑ ¿¹'),
h1('°£´ÜÇÑ ¿¹'),
start_form,
"À̸§ÀÌ ¹¹´Ï? ",textfield('name'),p,
"¿øÇÏ´Â °ÍÀº ¹¹´Ï?", p,
checkbox_group(-name=>'words',
-values=>['¿©ÀÚ','¾Æ³»','¿©µ¿»ý','¿©ÀÚ¾Ö'],
-defaults=>['¿©ÀÚ','¾Æ³»']), p,
"ÁÁ¾ÆÇÏ´Â »öÀº? ",
popup_menu(-name=>'color',
-values=>['»¡°£»ö','³ì»ö','ÆĶõ»ö','²ÀÁö»ö']),p,
submit('º¸³»±â'),
end_form,
hr;
if (param()) {
print "´Ï À̸§: ",em(param('name')),p,
"ÇÊ¿äÇÑ °Í: ",em(join(", ",param('words'))),p,
"ÁÁ¾ÆÇÏ´Â »ö: ",em(param('color')),
hr;
}
½ÇÇà°á°ú
example1.cgi
¿ä¾à
CGI.pmÀº Perl 5ÀÇ °³Ã¼¸¦ »ç¿ëÇؼ Æû ¹®¼¸¦ ½±°Ô »ý¼ºÇÏ°í Æû ¹®¼ÀÇ ÀÔ·ÂÀ» ½±°Ô ó¸®ÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ÀÌ ÆÐÅ°Áö´Â ÇöÀçÀÇ ÁúÀÇ ¹®ÀÚ¿°ú ´Ù¸¥ »óÅ º¯¼öÀÇ °ªÀ» Æ÷ÇÔÇÑ CGI °³Ã¼¸¦ Á¤ÀÇÇÏ°í ÀÖ´Ù. CGI °³Ã¼ÀÇ ¸Þ¼Òµå¸¦ »ç¿ëÇؼ CGI¿¡ Àü´ÞµÇ´Â Å°¿öµå¿Í ¸Å°³º¯¼ö¸¦ Á¶»çÇÏ°í ÇöÀçÀÇ ÁúÀǷκÎÅÍ ÃëÇÑ ÃʱⰪÀ¸·Î ÆûÀ» »ý¼ºÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸ðµâÀº HTMLÀ» ¸¸µå´Â ¸Þ¼Òµå¸¦ Á¦°øÇϹǷΠŸÀÌÇΰú ÄÚµù ¿À·ù¸¦ ÁÙÀÏ ¼ö ÀÖ´Ù. ¶ÇÇÑ ÀÌ ÆÐÅ°Áö´Â CGI ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇϴµ¥ÀÖ¾î¼ ¸î¸î °¡Áö °í±Þ ±â´É, Áï, ÆÄÀÏ ¾÷·Îµå, ÄíÅ°, Á¾¼Ó ¼½Ä ÆÄÀÏ, ¼¹ö Ǫ½¬, ÇÁ·¹ÀÓµîÀ» Áö¿øÇÑ´Ù.
CGI.pmÀº ¶ÇÇÑ °³Ã¼ ÁöÇâ Ư¡À» ¿øÇÏÁö ¾Ê´Â »ç¶÷µéÀ» À§ÇØ ÇÔ¼ö ÁöÇâ ÇÁ·Î±×·¡¹Ö ½ºÅ¸Àϵµ Á¦°øÇÑ´Ù.
CGI.pmÀÇ ¼³Ä¡
CGI.pmÀÇ ÃֽŠ¹öÀüÀº ´ÙÀ½ »çÀÌÆ®¿¡¼ ±¸ÇÒ ¼ö ÀÖ´Ù.
<A HREF="http://www.genome.wi.mit.edu/ftp/pub/software/WWW/cgi_docs.html">http://www.genome.wi.mit.edu/ftp/pub/software/WWW/cgi_docs.html</A> <a href='http://www.genome.wi.mit.edu/ftp/pub/software/WWW/cgi_docs.html' target='_blank' style='border-bottom: none'><IMG src='/images/external.png' align='middle' border=0 style='border-bottom: 0'></a>
<A HREF="ftp://ftp-genome.wi.mit.edu/pub/software/WWW/">ftp://ftp-genome.wi.mit.edu/pub/software/WWW/</A>
Unix
ÀÏ´Ü ´Ù¿î ¹ÞÀº ÈÄ ´ÙÀ½°ú °°Àº ÀýÂ÷¿¡ µû¶ó CGI.pmÀ» ¼³Ä¡ÇÑ´Ù.
- ÀÓÀÇÀÇ µð·ºÅ丮¿¡ ¾ÐÃàÀ» Ǭ´Ù.
gzip -d cgi_pm-2_42_tar.gz
tar xvf CGI.pm-2.42.tar
- ¾ÐÃàÀ» Ç®¸é CGI.pm-x.xx¿Í °°Àº µð·ºÅ丮°¡ »ý¼ºµÇ´Âµ¥ ÀÌ µð·ºÅ丮·Î À̵¿ÇÑ´Ù(¿©±â¼ x.xx´Â CGI.pmÀÇ ¹öÀü ¹øÈ£ÀÌ´Ù).
cd CGI.pm-2.42
- ÀÌ µð·ºÅ丮¿¡¼ ´ÙÀ½°ú °°Àº ¼³Ä¡¸í·ÉÀ» ¼öÇàÇÑ´Ù.
perl Makefile.PL
make
make test
make install
ÀÌ ¸í·ÉÀ» ¼öÇàÇϸé ÇöÀç ÆÞÀÌ ¼³Ä¡µÈ °æ·Î¿¡ CGI.pm°ú ºÎ¼ÓÆÄÀÏÀ» º¹»çÇϸç, CGI.pmÀ» À§ÇÑ ¸Å´º¾ó ÆÄÀÏÀ» »ý¼º, º¹»çÇϰԵȴÙ.
ÁÖÀÇ:
make install ¸í·ÉÀº ¹Ýµå½Ã °ü¸®ÀÚÀÇ ±ÇÇÑÀÌ ÀÖ¾î¾ß ÇÑ´Ù.
- ¸¸¾à À§ÀÇ °úÁ¤¿¡¼ ¿À·ù°¡ ¹ß»ýÇÏ´Â °æ¿ì¿¡´Â ´ÙÀ½°ú °°ÀÌ CGI.pmÀ» Á÷Á¢ º¹»çÇؼ »ç¿ëÇصµ µÈ´Ù.
cp CGI.pm /usr/local/lib/perl5
cp -R CGI /usr/local/lib/perl5
ÁÖÀÇ:
Á÷Á¢ º¹»çÇؼ ¼³Ä¡ÇÏ´Â °æ¿ì ¸Þ´º¾ó ÆäÀÌÁö´Â º¹»çµÇÁö ¾ÊÀ¸¹Ç·Î UnixÀÇ man ¸í·ÉÀ» ÀÌ¿ëÇؼ CGI.pmÀÇ ¸Å´º¾óÀ» º¸±âÀ§Çؼ´Â ¸Å´º¾ó ÆäÀÌÁö ¿ª½Ã ¼öÀÛ¾÷À¸·Î ¼³Ä¡ÇØ¾ß ÇÑ´Ù.
Windogs NT
À©µµ¿ì NT¿¡¼´Â ¼³Ä¡ ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼ö ¾øÀ¸¹Ç·Î ¹Ù·Î º¹»çÇؼ »ç¿ëÇØ¾ß ÇÑ´Ù.
copy CGI.pm F:\Website\perl5\lib
copy /s CGI F:\Website\perl5\lib
ÁÖÀÇ:
CGI.pmÀ» ¼³Ä¡ÇÏ°í use CGI; ¹®ÀåÀ» »ç¿ëÇßÀ» ¶§ perl ¹öÀü¿À·ù ¸Þ½ÃÁö°¡ ¶ß´Â °æ¿ì¿¡´Â CGI.pmÀÇ ¼±µÎºÎºÐ¿¡¼ ´ÙÀ½°ú °°Àº ÇàÀ» ã¾Æ ¹öÀü ¹øÈ£¸¦ º¯°æÇÏ¸é µÈ´Ù.
package CGI;
require 5.004; # 5.004¸¦ 5.000À̳ª ÀÚ½ÅÀÇ ÆÞ ¹öÀü ¹øÈ£·Î º¯°æÇÑ´Ù.
# perl ¹öÀüÀÇ È®ÀÎÀº ¸í·ÉÇà¿¡¼ perl -v¸¦ »ç¿ëÇÑ´Ù.