WWW Build, Refine and Management ƯÈ÷ 1993³â NCSA (URL: http://www.ncsa.uiuc.edu) ¿¡¼ GUI ±â¹ÝÀÇ Browser ÀÎ Mosaic ÀÌ Internet ¿¡ ÃâÇöÇÑ ÀÌÈÄ·Î WWW ÀÇ ¼ºÀåÀ²Àº ³×Æ®¿÷ÀÇ ¼ºÀåÀ²À» ´É°¡ÇÒ Á¤µµ¿´°í, Internet ÀÇ »ç¿ëÀÌ °ð WWW ÀÇ »ç¿ëÀ̶ó´Â µµ½ÄÀÌ Çü¼ºµÉ Á¤µµ·Î ¹ßÀüÇÏ¿´À¸¸ç, ¾ÕÀ¸·Îµµ °í¼Ó¼ºÀåÀº Áö¼ÓµÉ Àü¸ÁÀÌ´Ù.
ÀÌ·¯ÇÑ ÀÏ·ÃÀÇ ¼ºÀåÀÇ ºÐÀ§±â´Â 'Á¤º¸ÀÇ º¸°í' ¶ó°í ÀÏÄþîÁö´Â Internet ¿¡¼ ´Ü¼øÈ÷ ÀÚ½ÅÀÌ ÇÊ¿äÇÑ Á¤º¸¸¦ ã±â¸¸ ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ÀÚ½ÅÀÌ Á÷Á¢ Á¤º¸ÀÇ Á¦°øÀÚ ¿ªÇÒÀ» ÇÏ°í ½Í´Ù´Â ¿å±¸¸¦ âÃâÇÏ°Ô µÇ¾ú°í À̰ÍÀÌ Web ¼¹ö¼öÀÇ Æø¹ßÀû Áõ°¡ÀÇ ÁÖ¿ä ¿äÀÎÀ¸·Î µîÀåÇÏ°Ô µÇ¾ú´Ù.
ÀÌ ¹®¼¿¡¼´Â ±×·¯ÇÑ ¿å±¸¸¦ ¸¸Á·½Ã۱â À§Çؼ Ãʺ¸Àڵ鵵 ½±°Ô Web ¼¹ö¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖµµ·Ï setup °úÁ¤À» ÀÚ¼¼È÷ ¼³¸íÇϰí, CGI (Common Gateway Interface) ÀÇ °³³ä°ú CGI ÇÁ·Î±×·¡¹ÖÀ» ÀÌÇØÇÏ°í ½ÇÁ¦·Î ¼³Ä¡ÇØ º½À¸·Î½á CGI ¸¦ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ¶ÇÇÑ, Web ¼¹ö¸¦ ±¸µ¿ÇÒ ¶§ »ý¼ºµÇ´Â Log file µéÀÌ ¾î¶»°Ô ±¸¼ºµÇ¾î ÀÖÀ¸¸ç ºÐ¼® Tool À» »ç¿ëÇØ¼ ºÐ¼®ÇÏ´Â ¹æ¹ý°ú ºÐ¼®ÇÑ ÀÚ·áµéÀ» ¾î¶»°Ô ÀÌ¿ëÇÒ °ÍÀÎÁö¿¡ ´ëÇØ¼ ³íÀÇÇØ º¸±â·Î ÇÑ´Ù.
Web ¼¹öÀÇ ¿ªÇÒÀº Browser ¸¦ ÅëÇÏ¿© Á¢¼öµÈ »ç¿ëÀÚ(End-User) ÀÇ ¿ä±¸(Request)¿¡ ´äÇÏ¿©(Response) Àß Á¤¸®µÈ (HTML ·Î ¾²¿©Áø) µ¥ÀÌŸ¸¦ »ç¿ëÀÚ¿¡°Ô Àü¼ÛÇÏ´Â °ÍÀÌ´Ù.
¸»ÇÏÀÚ¸é, Web ¼¹ö´Â »ç¿ëÀÚÀÇ ¿ä±¸¿¡ ÀÀÇÏ¿© HTML ÇüÅ·ΠÁ¤¸®µÈ µ¥ÀÌŸ¸¦ Àü¼ÛÇÏ´Â
¿ªÇÒÀ» ÇÏ´Â °ÍÀÌ´Ù. À̿ܿ¡µµ Web ¼¹ö´Â º¸¾È(Security) °ú »ç¿ë±â·Ï(Account)¸¦
À§ÇÑ Log file À» »ý¼ºÇϰí CGI µîÀ» ÅëÇØ¼ ¿©·¯°¡Áö ȯ°æÀ» Á¦°øÇÑ´Ù.
¹«»óÀ¸·Î Á¦°øµÇ´Â Web ¼¹öµµ ÇöÀç ´Ù¾çÇÑ Á¦Ç°ÀÌ ³ª¿Í ÀÖÀ¸¹Ç·Î, ¼¹ö¸¦ ¼±ÅÃÇÒ¶§´Â ¿ì¼± °¢ ¼¹öÀÇ Àå/´ÜÁ¡À» ÆÄ¾ÇÇϰí, ¼¹ö ¼³Ä¡¿Í À¯ÁöÀÇ ¿ëÀ̼º ¹× ¼º´ÉÀÇ Ãø¸éÀ» °í·ÁÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¼º´ÉÀÇ Ãø¸é¿¡¼´Â Àß Á¤¸®µÈ ÀÚ·á (URL: http://www.ncsa.uiuc.edu/InformationServers/Performance/V1.4/report.html) ¸¦ ±¸ÇÒ ¼ö ÀÖ´Ù.
°í¼º´ÉÀÌ¸ç ¼¹ö Configuration ÀÌ ºñ±³Àû ¿ëÀÌÇÏ´Ù°í ¾Ë·ÁÁø NCSA ¼¹ö¸¦ °íÃļ ¸¸µé¾ú´Ù´Â A PAtCHe Server (URL: http://www.apache.org) ¸¦ º¸¸é NCSA ¼¹öº¸´Ù ´õ ºü¸£°í È¿À²ÀûÀ̶ó´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù.
¿ì¸®´Â APACHE HTTP Server ¸¦ ¼±Åà ÇÏ¿´´Ù.
¹°·Ð, Çѱ¹¿¡ ÀÖ´Ù¸é APACHE ¼¹öÀÇ ¹Ì·¯¸µ »çÀÌÆ® (URL: http://cosmos.kaist.ac.kr/packages/www/apache/) ¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÌ ´õ ºü¸¦ °ÍÀÌ´Ù.
ÇöÀçÀÇ APACHE ¼¹öÀÇ ¹öÀüÀº 1.1.1 ÀÌ´Ù. 1.0.0 ¿¡¼ÀÇ °³¼±»çÇ×Áß ÁÖ¿äÇÑ ¸î°¡Áö´Â ´ÙÀ½°ú °°°í, ´õ ÀÚ¼¼ÇÑ ³»¿ëÀº New Features (URL: http://cosmos.kaist.ac.kr/packages/www/apache/docs/1.1/)¸¦ Âü°íÇÏ¸é µÈ´Ù.
% gzip -cd apache_1.1.1-sparc-sun.sunos4.1.4.tar.gz | tar xvf -apache_1.1.1 À̶õ µð·ºÅ丮°¡ »ý±â°Ô µÇ°í, ±× ¹Ø¿¡ ¸ðµç ÀÚ·áµé°ú ÇÁ·Î±×·¥µéÀÌ À§Ä¡ÇÏ°Ô µÈ´Ù. ±âÁ¸¿¡ ¼³Ä¡µÈ ¼¹öÀÇ Configuration file À» ±×´ë·Î ÀÌ¿ëÇϱâ À§Çؼ´Â apache_1.1.1 µð·ºÅ丮¸¦ httpd ·Î À̸§À» ¹Ù²Ù¾îÁÖ´ø°¡ Symbolic link ¸¦ ½ÃÄÑÁà¾ß ÇÑ´Ù. ´ÙÀ½Àº SunOS 4.1.4 ½Ã½ºÅÛÀÇ httpd µð·ºÅ丮 ±¸Á¶¸¦ º¸¿©ÁØ´Ù.
total 21 drwxr-xr-x 9 loveiris staff 512 Oct 15 11:27 ./ drwxr-xr-x 4 loveiris staff 512 Oct 14 22:50 ../ -rw-r--r-- 1 loveiris staff 3738 Mar 13 1996 CHANGES -rw-r--r-- 1 loveiris staff 2604 Feb 22 1996 LICENSE -rw-r--r-- 1 loveiris staff 3059 Jul 3 15:24 README drwxr-xr-x 2 loveiris staff 512 Jul 9 04:04 cgi-bin/ drwxr-xr-x 2 loveiris staff 512 Oct 15 11:12 conf/ drwxr-xr-x 2 loveiris staff 512 Jul 9 04:04 htdocs/ drwxr-xr-x 2 loveiris staff 2048 Jul 9 04:04 icons/ drwxr-xr-x 2 loveiris staff 512 Jul 9 04:04 logs/ drwxr-xr-x 2 loveiris staff 2048 Oct 5 10:18 src/ drwxr-xr-x 2 loveiris staff 512 Oct 5 10:19 support/
# This should be changed to whatever you set DocumentRoot to. <Directory /usr/local/etc/httpd/htdocs> # This may also be "None", "All", or any combination of "Indexes", # "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews". # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you (or at least, not yet). Options Indexes FollowSymLinksDocumentRoot ´Â »ç¿ëÀÚ°¡ Web ¼¹ö¿¡ Á¢¼ÓÇßÀ»¶§ °¡Àå ¸ÕÀú º¸¿©ÁÖ´Â HTML ¹®¼°¡ À§Ä¡ÇÒ °÷À» ÁöÁ¤ÇØ ÁÖ´Â °÷À̸ç, Web ¼¹ö¿¡¼ Á¦°øÇÏ´Â °¢Á¾ ¹®¼µéÀÌ ÀúÀåµÇ°í °ü¸®µÇ´Â ÀÏÁ¾ÀÇ È¨ µð·ºÅ丮ÀÌ´Ù. À̰ÍÀ» »ç¿ëÇÒ¶§ 'Option' À» ÁöÁ¤ÇØ ÁÙ ¼ö Àִµ¥, ÀÌ´Â µð·ºÅ丮 ÈÀϵ鿡 ´ëÇÑ ¼¹öÀÇ È°¿ë ¹æ¹ýÀ» ÁöÁ¤ÇØ ÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù. ¿©·¯°¡Áö Option ÀÌ ÀÖÀ» ¼ö Àִµ¥ ¸î°¡Áö¸¸ »ìÆìº¸µµ·Ï ÇÑ´Ù.
# This controls which options the .htaccess files in directories can # override. Can also be "All", or any combination of "Options", "FileInfo", # "AuthConfig", and "Limit" AllowOverride NoneAllowOverride ¶ó´Â °ÍÀº ¾î¶² µð·ºÅ丮³ª ÈÀÏ¿¡ ´ëÇÑ Á¢¼ÓÀ» ƯÁ¤ Áý´ÜÀ̳ª »ç¿ëÀÚµé ¿¡°Ô¸¸ Çã¿ëÇÒ ¸ñÀûÀ¸·Î ±× µð·ºÅ丮¿¡ .htaccess ¸¦ ¼³Ä¡ÇÏ¿´À»¶§ ±× µð·ºÅ丮ÀÇ ³»¿ëÀ» º¸¿©ÁÙ °ÍÀÎÁö ¾Æ´ÑÁö¸¦ °áÁ¤ÇÏ°Ô ÇÑ´Ù.
# Controls who can get stuff from this server. order allow,deny allow from all </Directory>order ¶ó´Â °ÍÀº ¼¹ö°¡ Á¢±Ù Á¦¾î¸¦ ¼öÇàÇÒ¶§ ½ÇÇàµÇ´Â ¼ø¼¸¦ ³ªÅ¸³½´Ù. À§ÀÇ °æ¿ì´Â allow ±â´ÉÀ» ¼öÇàÇÑ ÈÄ¿¡ deny ±â´ÉÀ» ¼öÇàÇÏ´Â °ÍÀ» ³ªÅ¸³½´Ù. 'deny, allow' , 'allow, deny', 'mutual-failure' ÀÇ 3°¡Áö Áß¿¡¼ Çϳª¸¦ ¼±ÅÃÇØ¾ß ÇÑ´Ù. ¸¶Áö¸·ÀÇ mutual-failureÀÇ °æ¿ì¿¡´Â Á¢±ÙÀ» Çã¿ëÇϰųª °ÅºÎÇÒ È£½ºÆ® ÁÖ¼Ò¸¦ allow ¿Í deny ¿¡ ¹Ýµå½Ã ³ªÅ¸³»¾ß ÇÑ´Ù. ÀÌ °æ¿ì allow ¿¡ ³ªÅ¸³ª´Â ÁÖ¼Ò´Â ¾î¶² °ÍÀ̵çÁö Á¢±ÙÀÌ Çã¿ëµÇ°í, deny ¿¡ ³ªÅ¸³ª´Â °ÍÀº ¾î¶² °ÍÀ̵çÁö °ÅºÎµÇ¸ç, ¾î´À ÂÊ¿¡µç ¸í½ÃµÇÁö ¾ÊÀº °ÍµéÀº Á¢±Ù °ÅºÎµÈ´Ù.
deny from Àº ¿°ÅµÈ Áּҵ鿡 ´ëÇØ¼´Â Á¢±ÙÀ» °ÅºÎÇϰڴٴ °ÍÀ» ³ªÅ¸³»¸ç, ÁÖ¼Ò¸¦ ³ªÅ¸³¾¶§´Â µµ¸ÞÀÎÀ̸§, È£½ºÆ®À̸§, È£½ºÆ® IP, IP ¾ÕºÎºÐ 3 ¹ÙÀÌÆ®¸¦ ¾µ ¼ö ÀÖ°í, ¸ðµç È£½ºÆ®¿¡ ´ëÇØ ÀÏÂ÷ÀûÀÎ Á¢±Ù °ÅºÎ¸¦ ³ªÅ¸³¾¶§´Â all ÀÌ ¾²ÀδÙ.
allow from Àº ³ª¿µÇ¾î ÀÖ´Â Áּҵ鿡 ´ëÇØ Á¢±ÙÀ» Çã¿ëÇϰڴٴ °ÍÀ» ³ªÅ¸³»¸ç ÁÖ¼Ò¸¦ ³ªÅ¸³»´Â ¹æ¹ýÀº À§¿Í µ¿ÀÏÇÏ´Ù.
# /usr/local/etc/httpd/cgi-bin should be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. <Directory /usr/local/etc/httpd/cgi-bin> AllowOverride None Options None </Directory>ÀÌ ºÎºÐÀº WWW ¼¹ö°¡ »ç¿ëÇÒ CGI µéÀÌ µé¾îÀÖ´Â µð·ºÅ丮¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ̰í Option, AllowOverride ´Â À§ÀÇ °Í°ú °°Àº ¿ªÇÒÀ» ÇÏ°Ô µÈ´Ù.
# Allow server status reports, with the URL of http://servername/status # Change the ".nowhere.com" to match your domain to enable. #<Location /status> #SetHandler server-status #order deny,allow #deny from all #allow from .nowhere.com #</Location>APACHE httpd 1.1.1 ¿¡¼ Ãß°¡µÈ ºÎºÐÀ¸·Î, ÀÌ ºÎºÐÀ» ¼³Á¤ÇØ µÎ¸é ƯÁ¤ È£½ºÆ® ȤÀº µµ¸ÞÀο¡¼ Á¢¼ÓÇÏ´Â Client µé¿¡ ´ëÇÑ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ°Ô µÈ´Ù. Server Statistics ¸¦ º¸´Â ¹æ¹ýÀº ¾Æ·¡¿Í °°´Ù.
http://your.server.name/status/
# ServerType is either inetd, or standalone. ServerType standalone # If you are running from inetd, go to "ServerAdmin".
inetd ¹æ½ÄÀ̶ó´Â °ÍÀº inetd ¶ó´Â process °¡ ÀÖ´Ù°¡ »ç¿ëÀÚÀÇ ¿ä±¸°¡ µé¾î¿Ã¶§¸¶´Ù »õ·Î¿î httpd process ¸¦ »ý¼º½ÃÄѼ »ç¿ëÀÚÀÇ ¿ä±¸¸¦ ó¸®Çϵµ·Ï ÇÏ´Â ¹æ½ÄÀ̰í, standalone ¹æ½ÄÀ̶ó´Â °ÍÀº Server pool ¹æ½Ä°ú °°Àº °ÍÀ¸·Î¼ ¼¹ö process ¸¦ ¹Ì¸® ¸¸µé¾î ³õ°í »ç¿ëÀÚÀÇ ¿ä±¸°¡ µé¾î¿À´Â´ë·Î ´ë±âÇϰí ÀÖ´Â ¼¹ö process ¿¡°Ô ÀÏÀ» ÇÒ´çÇÏ´Â ¹æ½ÄÀÌ´Ù. ÀÌ ¹æ¹ýÀº »ç¿ëÀÚÀÇ ¿ä±¸°¡ ÀÖÀ»¶§¸¶´Ù »õ·Î¿î process ¸¦ »ý¼º(fork) ÇÏ´Â inetd ¹æ½Äº¸´Ù ¼¹ö¸¦ »õ·Î »ý¼ºÇÏ´Â ½Ã°£À» ÁÙÀÓÀ¸·Î¼ º¸´Ù ºü¸¥ ¹ÝÀÀ¼Óµµ¸¦ ¾òÀ» ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù. Unix ¿¡¼ fork ´Â ½Ã°£ÀÌ ¸¹ÀÌ °É¸®´Â ÀÛ¾÷Áß Çϳª·Î Server pool ¹æ½ÄÀº »ç¿ëÀÚÀÇ ¼ö°¡ ¸¹¾ÆÁú¼ö·Ï »ó´çÇÑ ¼º´ÉÀÇ Çâ»óÀ» °¡Á®¿À°Ô
µÇ¸ç, ½ÇÁ¦ÀÇ ½ÇÇè°á°ú (URL: http://www.ncsa.uiuc.edu/InformationServers/Performance/V1.4/report.html) µµ ÀÌ »ç½ÇÀ» ÀÔÁõÇØ ÁØ´Ù.
# Port: The port the standalone listens to. For ports < 1023, you will # need httpd to be run as root initially. Port 800 ¿¡¼ 1023 ±îÁöÀÇ port ´Â ½Ã½ºÅÛ¿¡ ¹Ì¸® ¿¹¾àÀÌ µÇ¾î ÀÖÀ¸¸ç ÁÖ¿ä ¼ºñ½º¿¡ ´ëÇØ¼´Â °íÀ¯ port ¹øÈ£°¡ ÇÒ´çµÇ¾î ÀÖ´Ù. httpd À» À§ÇÑ port ¹øÈ£´Â 80 ¹øÀ̰í À̰ÍÀ» Default ·Î »ç¿ëÇÑ´Ù. 1024 ¹øº¸´Ù Å« port ¹øÈ£ÀÇ »ç¿ëÀº ÀÏ¹Ý »ç¿ëÀÚµµ °¡´ÉÇϵµ·Ï µÇ¾î ÀÖÀ¸¸ç Á¢¼ÓÇÒ¶§´Â ¾Æ·¡ÀÇ ¿¹¿Í °°ÀÌ URL ¿¡ port ¹øÈ£±îÁö ¸í½Ã¸¦ ÇØÁÖ¾î¾ß ÇÑ´Ù.
http://ktmp.kaist.ac.kr:8080/
# HostnameLookups: Log the names of clients or just their IP numbers # e.g. www.apache.org (on) or 204.62.129.132 (off) HostnameLookups onLog file ¿¡ ±â·ÏµÇ´Â Client µéÀÌ ¾îµð¿¡¼ Á¢¼ÓÇÏ¿´´ÂÁö¿¡ ´ëÇÑ Á¤º¸¸¦ IP address ·Î ³²±æ°ÍÀÎÁö ȤÀº È£½ºÆ® À̸§À¸·Î ³²±æ°ÍÀÎÁö¸¦ °áÁ¤ÇÏ´Â ºÎºÐÀÌ´Ù.
# If you wish httpd to run as a different user or group, you must run # httpd as root initially and it will switch. # User/Group: The name (or #number) of the user/group to run httpd as. # On SCO (ODT 3) use User nouser and Group nogroup User nobody Group #-1standalone ¹æ½ÄÀ¸·Î ¼¹ö¸¦ ±¸µ¿½ÃÄ×À»¶§ »ç¿ëµÇ´Â °ÍÀ¸·Î httpd ¼¹ö°¡ »ç¿ëÀÚµéÀÇ ¿ä±¸¿¡ ´ëÇØ¼ »ý¼º½ÃŰ´Â Child process ¿¡ ´ëÇÑ UID, GID ¸¦ ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù. root ¿Í °°ÀÌ ½Ã½ºÅÛÀ» °ü¸®ÇÏ´Â »ç¶÷ÀÇ UID ³ª GID ¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â httpd process °¡ root ÀÇ ±ÇÇÑÀ» °¡Áö°Ô µÇ¹Ç·Î À߸øÇÏ¸é ½Ã½ºÅÛÀÌ Å©·¡Å·À» ´çÇÒ¼öµµ ÀÖ°Ô µÈ´Ù. ±×·¯¹Ç·Î ´ë°³ nobody ±×·ì¹× nobody »ç¿ëÀÚ¿¡ ´ëÇØ Á¤ÀǸ¦ ÇÏ°Ô µÈ´Ù. OS ÀÇ Á¾·ù¿¡ µû¶ó¼ ¼³Á¤ÇÏ´Â ¹æ½ÄÀÌ ´Ù¸£¹Ç·Î ÁÖÀÇÇØ¾ß ÇÑ´Ù.
# ServerAdmin: Your address, where problems with the server should be # e-mailed. ServerAdmin you@your.address # ServerRoot: The directory the server's config, error, and log files # are kept in ServerRoot /usr/local/etc/httpd¼¹ö °ü¸®ÀÚÀÇ E-mail address ¸¦ Àû¾îÁÖ´Â °÷À̰í, ServerRoot ¶ó´Â °ÍÀº httpd ¼¹ö ÇÁ·Î±×·¥ÀÌ ¼³Ä¡µÈ µð·ºÅ丮¸¦ Àû¾îÁÖ¸é µÈ´Ù.
# BindAddress: You can support virtual hosts with this option. This option # is used to tell the server which IP address to listen to. It can either # contain "*", an IP address, or a fully qualified Internet domain name. # See also the VirtualHost directive. #BindAddress *BindAddress µÚ¿¡ ³ª¿µÈ È£½ºÆ® ÁÖ¼Ò¿¡¼ÀÇ Á¢¼Ó¸¸À» Çã¿ëÇÑ´Ù. Á¢±Ù ÅëÁ¦¸¦ ¸ñÀûÀ¸·Î ÀÌ¿ëµÉ ¼ö ÀÖÀ¸¸ç µÚ¿¡¼ ¼³¸íµÉ Virtual host ¿Í´Â ÇÔ°Ô ¾²ÀÏ ¼ö ¾ø´Ù.
# ErrorLog: The location of the error log file. If this does not start # with /, ServerRoot is prepended to it. ErrorLog logs/error_log # TransferLog: The location of the transfer log file. If this does not # start with /, ServerRoot is prepended to it. TransferLog logs/access_log # PidFile: The file the server should log its pid to PidFile logs/httpd.pid # ScoreBoardFile: File used to store internal server process information ScoreBoardFile logs/apache_statusLog file ÀÇ À̸§°ú À§Ä¡¸¦ ÁöÁ¤ÇØÁÖ´Â ºÎºÐÀÌ´Ù. ÀÚ¼¼ÇÑ °ÍÀº Log analyzer ºÎºÐ¿¡¼ ´Ù·çµµ·Ï ÇÑ´Ù.
# ServerName allows you to set a host name which is sent back to clients for # your server if it's different than the one the program would get (i.e. use # "www" instead of the host's real name). # # Note: You cannot just invent host names and hope they work. The name you # define here must be a valid DNS name for your host. If you don't understand # this, ask your network administrator. #ServerName new.host.nameWeb ¼¹öÀÇ À̸§À» Á¤ÇÏ´Â ºÎºÐÀ¸·Î º¸Åë È£½ºÆ®ÀÇ À̸§À» ½áÁÖÁö¸¸, ²À È£½ºÆ® À̸§°ú °°À» ÇÊ¿ä´Â ¾ø´Ù. ¿¹¸¦ µé¾î, www.your.domain.name À̶ó°í ÇÏ¸é ±× µµ¸ÞÀÎÀÇ ´ëÇ¥ Web ¼¹ö°¡ µÇ´Â °ÍÀÌ º¸ÅëÀÌ´Ù.
# KeepAlive: The number of Keep-Alive persistent requests to accept # per connection. Set to 0 to deactivate Keep-Alive support KeepAlive 5 # KeepAliveTimeout: Number of seconds to wait for the next request KeepAliveTimeout 15¿øÇÏ´Â ÀڷḦ ã±â À§Çؼ ƯÁ¤ ¼¹ö¿¡ Á¢¼ÓÀ» Çß´Ù°í ÇßÀ»¶§, º¸ÅëÀÇ °æ¿ì ´Ü ÇѰ¡ÁöÀÇ ÀڷḸÀ» ¾ò±â À§Çؼ Á¢¼ÓÇÑ °æ¿ì´Â µå¹° °ÍÀÌ´Ù. ´ëºÎºÐ ¿©·¯°³ÀÇ ¹®¼µéÀ» µÚÀûÀÌ¸é¼ Ã£¾Æ¾ß ÇÒ °æ¿ì°¡ ¸¹´Ù. ±×·±µ¥, ½ÇÁ¦·Î ¾î¶² Browser °¡ ¼¹ö¿¡¼ µ¥ÀÌŸ¸¦ °¡Áö°í ¿Ã¶§´Â °¢°¢ÀÇ ÈÀϸ¶´Ù ´Ù¸¥ TCP connection À» ÀÌ·ç¾î¼ ¹®¼¸¦ °¡Á®¿À°Ô µÈ´Ù. Áï, ¿ì¸®°¡ 10 °³ÀÇ ÈÀÏÀÌ ÇÊ¿äÇØ¼ ¹Þ¾Æ¿Ã¶§´Â 10°³ÀÇ ¼·Î ´Ù¸¥ TCP connection ÀÌ »ý±â°Ô µÇ´Â °ÍÀÌ´Ù. ¼Óµµ°¡ ºü¸¥ °æ¿ì¶ó¸é º° ¹®Á¦°¡ ¾ø°ÚÁö¸¸ ¸¸¾à ¼Óµµ°¡ ³Ê¹«³ª ´À¸° °æ¿ì¶ó¸é »ç¿ëÀÚÀÇ °üÁ¡¿¡¼´Â Â¥Áõ³ª´Â ÀÏÀÌ µÉ °ÍÀÌ´Ù.
À̸¦ ÇØ°áÇϱâ À§Çؼ APACHE ¼¹ö¿¡¼´Â ¾î¶² ¼¹ö¿¡ Á¢¼ÓÀ» ÇÑ °æ¿ì, ÀÏÁ¤ ½Ã°£µ¿¾ÈÀº »ç¿ëÀÚÀÇ ¿ä±¸°¡ ¾ø´õ¶óµµ ¿¬°áÀ» Áö¼Ó½ÃŲ´Ù. ±×·¯´Ù°¡, ¾î¶² ÀÏÁ¤ ½Ã°£µ¿¾È »ç¿ëÀÚÀÇ ¿ä±¸°¡ ¾øÀ¸¸é ºñ·Î¼Ò ¿¬°áÀ» Á¾·á½ÃŲ´Ù. ÀÌ ¹æ¹ýÀº ¾î¶² ¼¹ö¿¡ ºó¹øÇÏ°Ô Á¢¼ÓÇÏ´Â °æ¿ì¿¡ ¼ÓµµÀÇ Çâ»óÀ» °¡Á®¿Ã ¼ö ÀÖ´Ù.
ÇÏÁö¸¸ À̸¦ ½Ã½ºÅÛÀÇ °üÁ¡¿¡¼ º¸¸é ¾î¶»°Ô µÉ±î? ¼¹öÀÇ °üÁ¡¿¡¼ »ç¿ëÀÚÀÇ ¿ä±¸µµ ¾ø´Âµ¥ °è¼ÓÇØ¼ Connection À» ¸Î°í Àִ´ٴ °ÍÀº Å« ºÎÇÏ·Î ÀÛ¿ëÇÏ°Ô µÈ´Ù. Áï, À̸¦ ¹æÁöÇϱâ À§Çؼ KeepAliveTimeout À» ¼³Á¤ÇÏ°Ô µÈ´Ù. À§ÀÇ ¿¹¿¡¼ 15 ¶ó´Â °ÍÀº 15 Ãʸ¦ ÀǹÌÇÑ´Ù. Áï, 15Ãʵ¿¾È »ç¿ëÀÚÀÇ ¿ä±¸°¡ ¾ø¾ú´Ù¸é Connection À» Á¾·á½ÃŰ°Ú´Ù´Â °ÍÀ» ³ªÅ¸³½´Ù.
# Server-pool size regulation. Rather than making you guess how many # server processes you need, Apache dynamically adapts to the load it # sees --- that is, it tries to maintain enough server processes to # handle the current load, plus a few spare servers to handle transient # load spikes (e.g., multiple simultaneous requests from a single # Netscape browser). # It does this by periodically checking how many servers are waiting # for a request. If there are fewer than MinSpareServers, it creates # a new spare. If there are more than MaxSpareServers, some of the # spares die off. These values are probably OK for most sites --- MinSpareServers 5 MaxSpareServers 10 # Number of servers to start --- should be a reasonable ballpark figure. StartServers 5 # Limit on total number of servers running, i.e., limit on the number # of clients who can simultaneously connect --- if this limit is ever # reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW. # It is intended mainly as a brake to keep a runaway server from taking # Unix with it as it spirals down... MaxClients 150 # MaxRequestsPerChild: the number of requests each child process is # allowed to process before the child dies. # The child will exit so as to avoid problems after prolonged use when # Apache (and maybe the libraries it uses) leak. On most systems, this # isn't really needed, but a few (such as Solaris) do have notable leaks # in the libraries. MaxRequestsPerChild 30¾Õ¼ ¾ð±ÞÇÑ Server pool ¹æ½ÄÀ» ÀÌ¿ëÇÒ¶§ ÀÌ¿ëµÇ´Â ºÎºÐÀ¸·Î¼ StartServers ´Â ÃÖÃÊ¿¡ ¸î °³ÀÇ httpd process ¸¦ »ý¼º½ÃÄÑ ³õÀ» °ÍÀΰ¡ ÁöÁ¤ÇÏ´Â °ÍÀ̰í, Min/Max Spare Servers ¶ó´Â °ÍÀº ÀÏÁ¤ ½Ã°£¸¶´Ù ÇöÀç ´ë±âÇϰí ÀÖ´Â ¼¹öÀÇ °¹¼ö¸¦ È®ÀÎÇÏ¿© ÃÖ¼Ò ¼¹öÀÇ ¼öº¸´Ù ÀûÀ»¶§´Â process ¸¦ ´õ »ý¼º½ÃŰ°í ³²À» °æ¿ì´Â process ¸¦ ¾ø¾Ö´Â ¿ªÇÒÀ» ÇØ¼ Ç×»ó ÀÏÁ¤ ¼ýÀÚÀÇ ¼¹ö°¡ ´ë±âÇϰí ÀÖµµ·Ï ÇØÁÖ´Â ¿ªÇÒÀ» Çϸç, MaxClients ´Â ¼ºñ½º¸¦ Á¦°øÇÏ´Â µ¿¾È ÃÖ´ë ¸î °³ÀÇ process ¸¦ »ý¼º °¡´ÉÇÏ°Ô ÇÒ °ÍÀΰ¡ ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù.
ÃÖ´ë °¹¼ö Á¦ÇÑÀÇ ¸ñÀûÀº httpd process ¿¡ ÀÇÇØ ½Ã½ºÅÛÀÌ Áö³ªÄ£ ºÎÇϸ¦ ¹ÞÁö ¾Ê°Ô Çϴµ¥ ÀÖ°í, À̸¦ ÃʰúÇÏ´Â »ç¿ëÀÚ ¿ä±¸°¡ µ¿½Ã¿¡ µé¾î¿À´Â °æ¿ì´Â ¼ºñ½º¸¦ °ÅºÎÇÏ°Ô µÈ´Ù.
# Listen: Allows you to bind Apache to specific IP addresses and/or # ports, in addition to the default. See also the VirtualHost command #Listen 3000 #Listen 12.34.56.78:80ÁöÁ¤µÈ È£½ºÆ®ÀÇ port ¿¡¼ Socket connection À» ¿¾îµÎ°í ´ë±âÇϰڴٴ °ÍÀ» ³ªÅ¸³½´Ù.
# VirtualHost: Allows the daemon to respond to requests for more than one # server address, if your server machine is configured to accept IP packets # for multiple addresses. This can be accomplished with the ifconfig # alias flag, or through kernel patches like VIF. # Any httpd.conf or srm.conf directive may go into a VirtualHost command. # See alto the BindAddress entry. #<VirtualHost host.foo.com> #ServerAdmin webmaster@host.foo.com #DocumentRoot /www/docs/host.foo.com #ServerName host.foo.com #ErrorLog logs/host.foo.com-error_log #TransferLog logs/host.foo.com-access_log #</VirtualHost>Virtual Host ¶õ ÇϳªÀÇ ¼¹ö¿¡ ¸î °³ÀÇ IP ÁÖ¼Ò¸¦ ÇÒ´çÇÏ¿©, ¾î´À IP ÁÖ¼Ò·Î µé¾î¿Â ¼ºñ½º ¿ä±¸ÀÎÁö ¾Ë¾Æ³»¾î ÇØ´çÇÏ´Â º°µµÀÇ ¼¹ö ȨÆäÀÌÁö·Î ¿¬°áÇØÁÖ´Â °ÍÀ» ¸»ÇÑ´Ù. À̰ÍÀ» ÀÌ¿ëÇÏ¿© ÇÑ ´ëÀÇ È£½ºÆ®¿¡¼ ¼·Î ´Ù¸¥ IP ÁÖ¼Ò¸¦ °¡Áö´Â ¿©·¯ °÷ÀÇ ¼¹ö ȨÆäÀÌÁö¸¦ ±¸¼ºÇÒ ¼ö°¡ ÀÖ´Ù.
È£½ºÆ® ³» »ç¿ëÀÚ¿Í ¿ÜºÎ¿¡¼ Á¢¼ÓÇÏ´Â »ç¿ëÀÚ¿¡ ´ëÇØ ´Ù¸¥ ¼ºñ½º¸¦ Á¦°øÇØÁÖÀÚ ÇÒ ¶§ À§¿Í °°Àº ¹æ½ÄÀ¸·Î ¼ºñ½º ÇÒ ¼ö ÀÖ´Ù. ¹°·Ð, ÀÌ·± ±â´ÉÀ» ÀÌ¿ëÇϱâ À§Çؼ´Â ÇϳªÀÇ È£½ºÆ®¿¡ ¿©·¯ °³ÀÇ IP ÁÖ¼Ò¸¦ ÇÒ´çÇÒ ¼ö ÀÖ´Â ½Ã½ºÅÛÀ̶ó¾ßÇÑ´Ù.
# DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. DocumentRoot /usr/local/etc/httpd/htdocs¾Õ¿¡¼ ¾ð±ÞµÈ access.conf ÈÀÏÀÇ DocumentRoot ¿Í °°Àº ±â´ÉÀ» ÇÑ´Ù.
# UserDir: The name of the directory which is appended onto a user's home # directory if a ~user request is recieved. UserDir public_html°¢ »ç¿ëÀÚµéÀÇ °³ÀÎ Home page µð·ºÅ丮¸¦ ÁöÁ¤ÇÑ´Ù. À̶§ÀÇ µð·ºÅ丮¸íÀº /etc/passwd ÈÀÏ¿¡ ³ªÅ¸³ »ç¿ëÀÚÀÇ Home µð·ºÅ丮¿¡¼ »ó´ëÀûÀ¸·Î ÁöÁ¤µÈ´Ù. ¸¸¾à °³ÀÎ »ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ Home page ¸¦ ±¸ÃàÇÏ·Á ÇÑ´Ù¸é ÀÚ½ÅÀÇ Home µð·ºÅ丮 ¹Ø¿¡ public_html À̶õ µð·ºÅ丮¸¦ ¸¸µé°í ±×°ÍÀ» Home µð·ºÅ丮·Î ÇÏ¿© HTML ¹®¼µéÀ» ÀÛ¼ºÇÏ¸é µÈ´Ù.
# DirectoryIndex: Name of the file or files to use as a pre-written HTML # directory index. Separate multiple entries with spaces. DirectoryIndex index.htmlƯÁ¤ ÈÀÏÀ» ÁöÁ¤ÇÏÁö ¾Ê°í µð·ºÅ丮À̸§À¸·Î¸¸ URL À» ÁöÁ¤ÇÏ¿´À»¶§ ±× µð·ºÅ丮¿¡¼ Default ·Î ã°ÔµÇ´Â ÈÀÏÀÇ À̸§À» ³ªÅ¸³½´Ù. ¿©·¯°³¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.
# FancyIndexing is whether you want fancy directory indexing or standard FancyIndexing onµð·ºÅ丮³ª ÈÀÏÀÇ ¸ñ·ÏÀ» º¸¿©ÁÙ¶§, ÈÀÏÀÇ Å©±â³ª Á¾·ù ¶Ç´Â È®ÀåÀÚ¿¡ µû¶ó¼ ÁöÁ¤µÈ Icon À¸·Î º¸¿©ÁÙ °ÍÀÎÁö¸¦ ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù.
# AddIcon tells the server which icon to show for different files or filename # extensions AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/* AddIconByType (IMG,/icons/image2.gif) image/* AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* ...µð·ºÅ丮 index ÀÇ ÁÖ¾îÁø ÈÀÏ ÇüÅ¿¡ ´ëÇØ¼ Ãâ·ÂÇÒ Icon À» ¹Ì¸® ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù. »ç¿ëÀÚÀÇ ÆíÀÇ¿¡ µû¶ó¼ µ¡ºÙÀÏ ¼ö ÀÖ´Ù.
# DefaultIcon is which icon to show for files which do not have an icon # explicitly set. DefaultIcon /icons/unknown.gifÀ§¿¡¼ ÁöÁ¤ÇÑ Icon Á¤º¸°¡ ¾ø´Â ÈÀÏÀ» º¸¿©ÁÙ¶§ Default ·Î º¸¿©Áö´Â Icon À» ³ªÅ¸³½´Ù.
# AddDescription allows you to place a short description after a file in # server-generated indexes. # Format: AddDescription "description" filenameFancyIndexing ¿¡¼ »ç¿ëµÇ´Â ÈÀÏ¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀ» ÁöÁ¤ÇØÁÖ´Â ºÎºÐÀÌ´Ù. 'filename' ºÎºÐ¿¡´Â È®ÀåÀÚ³ª ÈÀÏÀ̸§ ȤÀº Wildcard Ç¥Çö¹æ¹ýÀÌ µé¾î°¥ ¼ö ÀÖ´Ù.
# ReadmeName is the name of the README file the server will look for by # default. Format: ReadmeName name # # The server will first look for name.html, include it if found, and it will # then look for name and include it as plaintext if found. # # HeaderName is the name of a file which should be prepended to # directory indexes. ReadmeName READMEµð·ºÅ丮 ¸ñ·ÏÀ» Ãâ·ÂÇÒ¶§, µð·ºÅ丮 index µÞºÎºÐ¿¡ °°ÀÌ Ãâ·ÂÇØÁÙ ÈÀϸíÀ» ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù. WWW ¸¦ ÀÌ¿ëÇÏ¿© Ftp service ¸¦ °âÇϰíÀÚ ÇÏ´Â °æ¿ì À¯¿ëÇÏ°Ô »ç¿ëµÇ´Â ºÎºÐÀÌ´Ù.
HeaderName HEADERÀ§ÀÇ °Í°ú´Â ´Þ¸® ¾ÕºÎºÐ¿¡ µ¡ºÙÀÏ µð·ºÅ丮ÀÇ Custom header ÈÀÏÀ» ÁöÁ¤ÇÏ´Â ºÎºÐÀÌ´Ù.
# IndexIgnore is a set of filenames which directory indexing should ignore # Format: IndexIgnore name1 name2... IndexIgnore */.??* *~ *# */HEADER* */README* */RCSµð·ºÅ丮 index ¸¦ Ãâ·ÂÇÒ¶§ ¹«½ÃÇÒ ÈÀϸíÀ» ÁöÁ¤ÇÑ´Ù.
# AccessFileName: The name of the file to look for in each directory # for access control information. AccessFileName .htaccessClient ·Î ¹®¼°¡ Àü´ÞµÉ¶§ ¼¹ö´Â °¢ µð·ºÅ丮¸¶´Ù AccessFileName ¿¡¼ ÁöÁ¤ÇÑ À̸§À» °¡Áø ÈÀÏÀÌ ÀÖ´ÂÁö¸¦ ã¾Æº» ÈÄ¿¡ Á¢±Ù Á¦¾î¸¦ ÇÒ °ÍÀÎÁö ¾Æ´ÑÁö¸¦ °áÁ¤ÇÏ°Ô µÈ´Ù.
# DefaultType is the default MIME type for documents which the server # cannot find the type of from filename extensions. DefaultType text/plain¾î¶² ÈÀÏÀÇ ÇüŰ¡ ¼¹ö°¡ °¡Áö°í ÀÖ´Â MIME.type °ú ÀÏÄ¡ÇÏÁö ¾ÊÀ»¶§, ±× ÈÀÏÀ» ¾î¶² ÇüÅ·Πº¸¿©ÁÙ °ÍÀÎÁö¸¦ °áÁ¤ÇÏ´Â º¯¼öÀÌ´Ù.
# AddEncoding allows you to have certain browsers (Mosaic/X 2.1+) uncompress # information on the fly. Note: Not all browsers support this. AddEncoding x-compress Z AddEncoding x-gzip gzÈÀÏÀÇ È®ÀåÀÚ¿¡ µû¶ó ÁöÁ¤µÈ ÈÀÏÇüÅ·ΠÀνÄÀ» Çϵµ·Ï Á¤ÀÇÇØ ÁÖ´Â ºÎºÐÀÌ´Ù.
# Redirect allows you to tell clients about documents which used to exist in # your server's namespace, but do not anymore. This allows you to tell the # clients where to look for the relocated document. # Format: Redirect fakename urlƯÁ¤ÇÑ À̸§À¸·Î µé¾î¿À´Â ¼ºñ½º ¿äûÀ» Á÷Á¢ ó¸®ÇÏÁö ¾Ê°í ´Ù¸¥ ¼¹ö¿¡°Ô ³Ñ°ÜÁÖ°íÀÚ ÇÒ¶§ »ç¿ëµÈ´Ù. ¿©·¯ °÷¿¡ ºÐ»êµÇ¾î ÀÖ´Â ¼¹öÀÇ µ¥ÀÌŸ¸¦ ÇϳªÀÇ URL ¿¡¼ 󸮸¦ ÇØÁÙ ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù.
# Aliases: Add here as many aliases as you need (with no limit). The format is # Alias fakename realname #Alias /icons/ /usr/local/etc/httpd/icons/¼¹ö °ü¸®ÀÚ°¡ ¾î¶² »çÁ¤¿¡ ÀÇÇØ¼ ÇöÀç±îÁö »ç¿ëÇÏ´ø µð·ºÅ丮ÀÇ °æ·Î¸¦ ¹Ù²Û´Ù´ø°¡ ȤÀº µð·ºÅ丮ÀÇ À̸§À» ¹Ù²Ù¾úÀ»¶§ ±âÁ¸ÀÇ »ç¿ëÀÚµéÀÌ ¾Æ¹«·± ºÒÆí¾øÀÌ °è¼ÓÇØ¼ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Á¶Ã³¸¦ ÃëÇØÁÙ¶§³ª ȤÀº º¹ÀâÇÑ µð·ºÅ丮±¸Á¶¸¦ °¡Áö°í ÀÖ´Â °æ¿ì º¹ÀâÇÔÀ» ÁÙÀ̱âÀ§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ̸ç, ÁöÁ¤ÇÒ ¼ö ÀÖ´Â Alias ÀÇ ¼ö´Â Á¦ÇÑÀÌ ¾ø´Ù.
# ScriptAlias: This controls which directories contain server scripts. # Format: ScriptAlias fakename realname #ScriptAlias /cgi-bin/ /usr/local/etc/httpd/cgi-bin/Web ¼¹ö¿¡¼ »ç¿ëÇÏ´Â CGI script ¸¦ ÀúÀåÇϰí ÀÖ´Â µð·ºÅ丮¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ µð·ºÅ丮 ³»¿¡ ÀÖ´Â ÈÀÏÀº ÀÐÇôÁö´Â°ÍÀÌ ¾Æ´Ï¶ó ½ÇÇàµÇ°Ô µÈ´Ù.
# AddHandler allows you to map certain file extensions to "handlers", # actions unrelated to filetype. These can be either built into the server # or added with the Action command (see below) # Format: AddHandler action-name ext1 # To use CGI scripts: #AddHandler cgi-script .cgi # To use server-parsed HTML files #AddType text/html .shtml #AddHandler server-parsed .shtml # Uncomment the following line to enable Apache's send-asis HTTP file # feature #AddHandler send-as-is asis # If you wish to use server-parsed imagemap files, use #AddHandler imap-file map # To enable type maps, you might want to use #AddHandler type-map varÈÀÏÀÇ Æ¯Á¤ÇÑ È®ÀåÀÚ¸¦ ÁöÁ¤Çؼ ±× È®ÀåÀÚ¸¦ °¡Áø ÈÀÏÀº ¾î¶² ÇÁ·Î±×·¥À¸·Î ÀÎ½Ä Ç϶ó´Â °ÍÀ» ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù. À ºÎºÐÀ» ¼³Á¤ÇØ ÁÖ¸é, ¼¹ö´Â .cgi ¶ó´Â È®ÀåÀÚ¸¦ °¡Áö´Â ÈÀÏÀº CGI-script ·Î ÀνÄÀ» ÇÏ°Ô µÇ°í, .shtml ¶ó´Â È®ÀåÀÚ¸¦ °¡Áø ÈÀÏÀº Server-parsed HTML ·Î ÀνÄÇÏ°Ô µÈ´Ù.
# Action lets you define media types that will execute a script whenever # a matching file is called. This eliminates the need for repeated URL # pathnames for oft-used CGI file processors. # Format: Action media/type /cgi-script/location # Format: Action handler-name /cgi-script/location # For example to add a footer (footer.html in your document root) to # files with extension .foot (e.g. foo.html.foot), you could use: #AddHandler foot-action foot #Action foot-action /cgi-bin/footer # Or to do this for all HTML files, for example, use: #Action text/html /cgi-bin/footerÁ¤ÀÇµÈ Media type ÀÌ ³ª¿À°Ô µÇ¸é ƯÁ¤ CGI script ¸¦ ½ÇÇàÇØÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù.
# MetaDir: specifies the name of the directory in which Apache can find # meta information files. These files contain additional HTTP headers # to include when sending the document #MetaDir .web # MetaSuffix: specifies the file name suffix for the file containing the # meta information. #MetaSuffix .metaHTTP header ºÎºÐ¿¡ µé¾î°¡´Â meta Á¤º¸µéÀ» Æ÷ÇÔÇÏ´Â µð·ºÅ丮¿Í ±× ÈÀÏÀÇ È®ÀåÀÚ¸¦ ÁöÁ¤ÇØÁÖ´Â ºÎºÐÀÌ´Ù.
# Customizable error response (Apache style)
# these come in three flavors
#
# 1) plain text
#ErrorDocument 500 "The server made a boo boo.
# n.b. the (") marks it as text, it does not get output
#
# 2) local redirects
#ErrorDocument 404 /missing.html
# to redirect to local url /missing.html
#ErrorDocument 404 /cgi-bin/missing_handler.pl
# n.b. can redirect to a script or a document using server-side-includes.
#
# 3) external redirects
#ErrorDocument 402 http://other.server.com/subscription_info.html
¾î¶² page ¿¡ Á¢¼ÓÀ» ÇßÀ»¶§ ±× page °¡ ¾ø¾îÁö°Å³ª ȤÀº ´Ù¸¥ °÷À¸·Î ¿Å°ÜÁ³°Å³ª
ÇßÀ»¶§ ¹ß»ýÇÏ´Â Error ÀÇ Ã³¸®¸¦ ¾î¶»°Ô ÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀÌ´Ù.
±âº»ÀûÀ¸·Î Á¦°øµÇ´Â Error message ¸¸ Ãâ·ÂÇØ ÁÙ¼öµµ ÀÖ°í °ü¸®ÀÚ°¡ ¸¸µç Error
message ¸¦ Ãâ·ÂÇØ ÁÙ¼öµµ ÀÖÀ¸¸ç ¿Å°ÜÁø page ¸¦ ¾Ë·ÁÁÖ´Â Message ¸¦ ³Ö¾îÁÙ ¼öµµ
ÀÖ´Ù.
standalone À¸·Î ½ÇÇàÇÏ´Â °æ¿ì´Â ´ÙÀ½°ú °°´Ù.
% httpd -r conf_file_pathÀ̶§ 80 ¹ø port ¸¦ »ç¿ëÇÑ´Ù¸é root ÀÇ ±ÇÇÑÀ¸·Î ½ÇÇàÀ» ½ÃÄÑÁà¾ß ÇÑ´Ù. ±×¸®°í, È£½ºÆ®°¡ Rebooting µÉ¶§¸¶´Ù ÀÚµ¿ÀûÀ¸·Î ½ÇÇàÀÌ µÇ±â¸¦ ¿øÇÑ´Ù¸é, SunOS 4.x ¸¦ »ç¿ëÇÏ´Â ½Ã½ºÅÛÀÇ °æ¿ì´Â /etc/rc.local ÀÇ ÇÑÁÙÀ» Ãß°¡ÇØ¾ß Çϸç, Solaris 2.x ¸¦ »ç¿ëÇÏ´Â ½Ã½ºÅÛ À̶ó¸é /etc/rc3.d µð·ºÅ丮¿¡ S90locald ¶ó´Â À̸§À¸·Î ÈÀÏÀ» ¸¸µé¾î¼ À§ÀÇ ¸í·É¾î¸¦ ³Ö¾îÁÖ¸é µÈ´Ù.
inetd ·Î ½ÇÇàÇÏ´Â °æ¿ì¿¡´Â /etc/services ¶ó´Â ÈÀÏ¿¡ httpd 80/tcp ¶ó´Â ÁÙÀ» Ãß°¡Çϰí /etc/inetd.conf ÈÀÏ¿¡ ´ÙÀ½À» ÷°¡Çϵµ·Ï ÇÑ´Ù.
http stream tcp nowait nobody httpd_path httpd_command¸¸¾à NIS ¸¦ ½ÇÇàÁßÀ̶ó¸é, NIS source ÈÀÏÀ» °íÃľßÇÏ°í ´Ù °íÄ£ÈÄ¿¡ ypmake ¸¦ ÅëÇØ¼ ÇØ´ç È£½ºÆ®¿¡ Àü´ÞµÇ¾î¾ß Á¦´ë·Î ÀÛµ¿ÇÏ°Ô µÈ´Ù. ±×¸®°í³ª¼ inetd ¿¡°Ô kill -1 ·Î Hangup Signal À» ÁÖ¸é, ±×¶§ºÎÅÍ HTTP
¿¬°á¿ä±¸°¡ ¿Ã¶§¸¶´Ù httpd °¡ ÀÚµ¿ÀûÀ¸·Î »ý¼ºµÇ°Ô µÈ´Ù.
% ps -awux | grep httpdConfiguration file À» º¯°æÇÑ °æ¿ì º¯°æµÈ ³»¿ëÀÌ ½ÇÁ¦·Î Àû¿ëÀÌ µÇ·Á¸é Hangup Signal À» ÁØ´Ù. ±×·¸°Ô Çϸé httpd ¸¦ ÁߴܽÃŰÁö ¾Ê°í Configuration file À» ´Ù½Ã Àеµ·Ï ÇÒ ¼ö ÀÖ´Ù.
inetd ·Î ½ÇÇàµÈ °æ¿ì´Â HTTP ¿¬°á¿ä±¸°¡ ¿Ã¶§¸¶´Ù process °¡ »ý±â´Â °ÍÀ̹ǷΠ/etc/inetd.conf ÀÇ http ºÎºÐÀ» »èÁ¦ÇÏÁö ¾Ê´Â ÀÌ»ó ½ÇÇàÀ» ÁßÁö½Ãų ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø´Ù.
¼¹öÃø¿¡¼¸¸ ¼³Ä¡¸¦ ÇÏ¸é ¿©·¯°¡Áö Client ¿¡ ´ëÇØ¼ ¼¹ö °ü¸®ÀÚ°¡ °¢°¢ ÇØ ÁÖ¾î¾ß ÇÒ ÀÏÀÌ ÁÙ¾îµé°Ô µÈ´Ù.
±×·¸´Ù¸é ´ÜÁ¡¿¡´Â ¾î¶² °ÍµéÀÌ ÀÖ´ÂÁö ¾Ë¾Æº¸µµ·Ï ÇϰڴÙ.
CGI ´Â ¼¹ö¿Í´Â ¿ÏÀüÈ÷ µ¶¸³ÀûÀÎ ÇϳªÀÇ process ¸¦ »ý¼ºÇÏ´Â °ÍÀ» ¸»ÇÑ´Ù. À̰ÍÀº ¼¹öÀÇ Á¾·ù¿¡ °ü°è¾ø°í ¼¹ö ¼ÒÇÁÆ®¿þ¾î¿Í ȣȯ¼ºÀÌ ÁÁÀ¸¸ç, ¾ÆÁÖ ´Ù¾çÇÑ ºÐ¾ßÀÇ Public Domain Program ÀÌ °³¹ßµÇ¾î Àֱ⠶§¹®¿¡ ±¸ÇöÇϱⰡ ½±°í ±×¸¸Å ³Î¸® »ç¿ëµÇ°í ÀÖ´Ù. ÀÌ·¯ÇÑ »ç½ÇµéÀÌ CGI ¸¦ Information Server ¿Í ȣȯµÇ´Â ¿ÜºÎ Application ÀÇ Ç¥ÁØÀ¸·Î ¸¸µç °ÍÀÌ´Ù.
ÀÌ·± °·ÂÇÑ(!) ÀåÁ¡À» °¡Áö°í ÀÖ´Â ¹Ý¸é °¢°¢ÀÌ µ¶¸³ÀûÀÎ process À̱⠶§¹®¿¡ Resource ÀÇ ³¶ºñ°¡ ½ÉÇÏ´Ù´Â ´ÜÁ¡À» °¡Áø´Ù. ¼¹ö°¡ °¢°¢ÀÇ Client ÀÇ ¿ä±¸¿¡ »õ·Î¿î CGI ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄÑ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌ °æ¿ì »ç¿ëÀÚÀÇ ¿ä±¸°¡ ÀûÀ»¶§¿¡´Â ¹®Á¦°¡ µÇÁö ¾ÊÁö¸¸, CGI ÇÁ·Î±×·¥ÀÌ ºó¹øÈ÷ Á¢¼ÓµÈ´Ù¸é °¢ ¿ä±¸¿¡ »õ·Î¿î process ¸¦ »ý¼º(fork)ÇÏ´Â °ÍÀÌ ¼¹öÀÇ ¼öÇà´É·Â¿¡ ½É°¢ÇÑ ¿µÇâÀ» ¹ÌÄ¥°ÍÀÌ´Ù.
API ´Â ¼¹öÀÇ API ¸¦ ÀÌ¿ëÇØ¼ ±â´ÉÀ» È®ÀåÇÏ´Â °ÍÀ» ÀǹÌÇÑ´Ù. Web ¼¹ö¸¦ ±×´ë·Î È®ÀåÇÑ °á°úÀ̱⠶§¹®¿¡ ¼Óµµ°¡ ºü¸£°í È¿À²ÀûÀÌÁö¸¸ ¾î´À ƯÁ¤ ¼¹öÀÇ API ¸¦ ÀÌ¿ëÇÒ °æ¿ì¿£ ´Ù¸¥ ¼¹ö¿¡¼´Â »ç¿ëÇÒ ¼ö ¾ø´Ù´Â Å« ´ÜÁ¡ÀÌ ÀÖ´Ù.
Netscape Server API (NSAPI) ´Â °í¼º´É°ú ¶Ù¾î³ ±â´É - CGI ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ Shared Library ÇüÅ·Π¸¸µé°Ô µÇ°í, ½ÇÇàÇÒ¶§¿¡´Â Web ¼¹ö°¡ Shared Library ÀÇ ÇÔ¼ö¸¦ È£ÃâÇϱ⠶§¹®¿¡ »õ·Î¿î process °¡ »ý±âÁö ¾Ê°Ô µÈ´Ù- À» Á¦°øÇÏ´Â CGI °°Àº ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé±â À§ÇÑ ¼ö´ÜÀ¸·Î Á¦°øµÈ´Ù. ¿¹¸¦ µé¾î, NSAPI ´Â »ç¿ëÀÚ Á¢±ÙÁ¦¾î, ¿¡·¯Ã³¸®, DB ¿¬°á -CGI ·Î ±¸ÇöÇÑ´Ù¸é ¼¹ö¿¡ ºÎ´ãÀ» ¸¹ÀÌ ÁÙ ÀÛ¾÷µé- °ú °°Àº ÀÏÀ» ó¸®Çϱâ À§Çؼ »ç¿ëÀÚ Function À» ÀÛ¼ºÇϴµ¥ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ·¸°Ô NSAPI °¡ °³¹ßÀÚ¿¡°Ô º¸´Ù Çâ»óµÈ ±â´ÉÀÇ Web ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé¼ö ÀÖµµ·Ï ÇØÁÖ´Â ¹Ý¸é¿¡ ÀÎÅÍÆäÀ̽º¿¡ »ç¿ëµÇ´Â ÇÁ·Î±×·¥Àº ¶Ç´Ù¸¥ ¼¹ö¸¦ Áö¿øÇÏ±â ¾î·Æ±â ¶§¹®¿¡, Netscape Server ¿¡¸¸ ¿¬°áµÇ¾î¾ß ÇÑ´Ù´Â ´ÜÁ¡ÀÌ ÀÖ´Ù.
ÀÌ ±â´ÉÀº ¼ºñ½º¸¦ ¿ä±¸ÇÏ´Â »ç¿ëÀÚ¿¡°Ô ¼¹ö »ç¿ëÀڷμ ÇÁ·Î±×·¥ ½ÇÇàÀ» °¡´ÉÇÏ°Ô ÇÏ´Â ¿ªÇÒÀ» Çϰí ÀÖÀ¸¹Ç·Î ½Ã½ºÅÛ º¸¾È»óÀÇ ¹®Á¦¸¦ ÀÏÀ¸Å³¼öµµ ÀÖ´Ù. ±×·³¿¡µµ ºÒ±¸Çϰí SSI ´Â CGI ¸¦ »ç¿ëÇÏÁö ¾Ê°í¼µµ Á¦ÇÑµÈ ¹üÀ§ÀÇ µ¿ÀûÀÎ HTML ÈÀÏÀ» ½±°Ô ¸¸µé ¼ö ÀÖ´Ù´Â Á¡°ú ¼¹öÃø¿¡¼ parsing À» ÇϹǷΠCGI ÀÇ °æ¿ìº¸´Ù ½Ã½ºÅÛ¿¡ ºÎ´ãÀ» Àû°Ô Áشٴ Á¡ÀÌ ÀåÁ¡ÀÌ´Ù.
¿ì¼±, ±âÁ¸ÀÇ ´Ù¸¥ ÇÁ·Î±×·¥°ú ±âº»ÀûÀ¸·Î ´Ù¸¥ Á¡Àº ´ÙÀ½°ú °°´Ù.
1. GET
»ç¿ëÀÚÀÇ Form À̳ª URL ¿¡¼ µ¥ÀÌŸ°¡ ¿À´Â ¹æ¹ýÀ¸·Î, Form ÀÇ °æ¿ì ¾Æ·¡¿Í °°Àº
ÇüÅ·Πº¸³»Áö°Ô µÈ´Ù.