Apache HTTP Server Version 2.4
ƢÉÇÑ î: tr
ÈÀÀûÀÎ À¥ö¦ üÇÏÁé »ýÇÏ Á¦Í ÇÔ öÀÇ Èµú É ëÇ Ë ÇÑÙ. ÄÄ À¥ö Åì ÁÇÕÀûÀÌí À¯¬ÇÑ Î âÉÀ» Á¦ƩÇÑÙ. ÀÌ Â Î âÉÀ» ÁÇÏ ýú Î µéî¥ »ëÀ» íÇÑÙ.
©ƢÔ ÄÄÀÇ ÎÄÀÏÀÌ ÀÖ µÅä碯 âÇÇÑÀÌ ÀÖÙé (Åë root) ö¦ ÇÇàÇÏ uid¦ ÅÀÇ ÈÇÈ òÀ» ö ÀÖÙ. À̦ íÁÇÏÁöÊí ÎƢ ÀúÀåµÈ µÅä碯 âÇÇÑÀ» ÁÖÁö Ңó. ÀÚÇÑ »ëÀ È Á ¦ ÂüíÇÏó.
Ç, ŬóÀÌƢ Á¦ƩÇÑ Á ÎÄÀÏ ÅÀÇ ëÎ âϵÈÙ. ÇÀÇƢ ÀÖ ŬóÀÌƢ ÎÄÀÏ Á¦îÀÚ¦ ÖÀ» ö ÀÖÀÇÎ, Φ Ùêҡע ÁÖÀÇÇ ÇÑÙ.
üÃµÈ µâ | üÃµÈ ÁöÃî |
---|---|
ErrorLog
ÁöÃî ƢÀå ÁäÇÑ ÎÄÀÏÀÎ ö Àù ÎÀÇ ÀÌסú ÀĦ ÁöÁÇÑÙ. ÄÄ À¥ö ÀÌ ÄÀÏ ÁÜÁÍ äûÀ» ÃÇÏ µµÁ »ýÇÑ Àù¦ âÏÇÑÙ. öƢ ÃÀÛÇÏÅ µÀÛÇϵ¥ Á¦Ƣ ÀÖÙé «ùÀÌ ÀµÇúí ҡעҡסÎ î»Ô íÄÂÁö¦ ËÁÁÖ ÀÌơÀ» ƢÀå ÕÀú »ììÁ ÇÑÙ.
Àù ΠÅë (ÀüÇüÀûÀÎ À¯ ÃÅÛ error_log
, À©µµìÁîÍ OS/2 error.log
) ÄÀÏ âϵÈÙ. À¯ ÃÅÛ ö Àù¦ syslog
ÄÀÌÇÁ¦ »çëÇÏ© Ù¥ ÇÁÎ¥ÀÎ öµµ ÀÖÙ.
Àù ÎÀÇ ÇüÄÀ »óëÀûÀÎ ÀÚÀ¯Óí ÀÚÇÏÙ. ¯ ëÎÀÇ Àù Î Çñ ƩÅëÀûÀÎ À ÁƢ ÀÖÙ. ¦ µéî, ÇñÀ Åë ÙÀú ơƢÙ.
[Wed Oct 11 14:32:52 2000] [error] [client 127.0.0.1] client denied by server configuration: /export/home/live/ap/htdocs/test
Î Çñ àÇñÀ ¯Â¥Í ãÀÌÙ. µÎ ÇñÀ íÇÏ ÀùÀÇ É¢À» ÅÙ. LogLevel
ÁöÃîÎ Àù Î âϵÇ ÀùÀÇ É¢À» Á¦ÇÑÇÒ ö ÀÖÙ.  ÇñÀ Àù¦ »ýÇÑ Å¬óÀÌÀÇ IP ÁÖÒÀÌÙ. ÀÌ ÙÀÎÅÍ ÀùÀÌ Àç, ÀÌ Ʃì öƢ ŬóÀÌÀÇ Á¢ÙÀ» ÅÎÇϵµÏ ÁµÇúÙí ÍÀÖÙ. äûÇÑ ÀÇ (À¥ ƩÎƢ Ñ) ÄÀÏÃÅÛ Ʃεµ ÀÎÙ.
Àù ΠÅì ÙçÇÑ ÁùÀÇ 硾Ƣ à ö ÀÖÙ. ëÎÀ ÀעÍ ñÁÇÏÙ. CGI Å©ÀÇ µöë Ãâµµ Àù Î âϵÈÙ. CGI Å©Ƣ stderr
Á ëÎ Àù ÎÎ »çµÈÙ.
Àù Î Á¦ ÃƢÇÏƢ »ý«ÇÒ ö Ù. ¯ äû ëÇÑ Àù ÎÀÇ Ʃì Á¢Ù εµ ëÀÀÇÏ ÇñÀÌ »ýäÙ. ¦ µéî, ÀÀÇ Ʃì »óÅÂÄÚµåƢ 403ÀÎ Á¢Ù Î ÇñÀÌ »ýäÙ. Á¢Ù Π»çëÀÚÁÀÇÇÒ ö ÀÖÀÇÎ ÀÌ ÄÀÏÀ» ÂüíÇÏ© Àù »óÈ ëÇÑ ÃƢÁ¦ òÀ» ö ÀÖÙ.
Ë»çÇÒҡ îҩ Á¦Ƣ »ýâÂÁö Àù Φ èÓ »ìì ÍÀÌ ÁÁÙ. À¯ ÃÅÛ ÙÀú ơÀÌ ÇÑÙ:
tail -f error_log
üÃµÈ µâ | üÃµÈ ÁöÃî |
---|---|
ö Á¢Ù ΠöƢ ÃÇÏ µç äûÀ» âÏÇÑÙ. LogFormat
ÁöÃî¦ »çëÇÏ© Î ÇÔÇÒ »ëÀ» Ô ÅÃÇÒ ö ÀÖÙ. ÀÌ ÀýÀ öƢ Á¢Ù Î µ »ëÀ» ÁÇÏ ýÀ» íÇÑÙ.
ơ Á¢Ù Î Á¦ âÏÇÏ ÍÀ Î üÀÇ ÃÀÛÀÏ »ÓÀÌÙ. ÙÀ Üè ÀÌ Á¦ ÇÏ© À¯ëÇÑ Åëè¦ µå ÍÀÌÙ. ÀÌ Â ÀÏÝÀûÀÎ Î 碯 ëÇ ÙçÁö ÊÀç, Î À ÇÁ¦ À¥öƢ ÇÒ ÀÏÀÌ ÏÙ. Î 碯 ëÇÑ ÁÍ Î¦ ÇÏ ÒÇÁ碯î ëÇ Open Directory ÂüíÇÏó.
ÄÄ À¥ö ÀÌÀüÎÅÍ mod_log_referer, mod_log_agent, CustomLog
ÁöÃîƢ ÀµÈ ÁöÃîµéÀÇ µç âÉÀ» ÀÌîÒÙ.
Á¢Ù ÎÀÇ ÇüÄÀ Åì »çëÀÚÁÀÇ ƢÉÇÏÙ. ÇüÄÀ CÀÇ printf(1) ÇüÄÀÚú Åì À¯»çÇÑ ÇüÄÀÚÀ» »çëÇÏ© ÁöÁÇÑÙ. ÙÀ Àý ¦ µéúÙ. ÇüÄÀÚ »çëƢÉÇÑ µç »ëÀ» ËÁé ÇüÄÀÚÀ» ÂüíÇÏó.
Á¢Ù ÎÀÇ ÀüÇüÀûÀÎ ÁÀ ÙÀú ơƢÙ.
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog logs/access_log common
¯é ÁöÁÇÑ Î ÇüÄÀÚÀ» Ƣí common
ÀÎ ÁÀÇÇÑÙ. ÇüÄÀÚÀ Û ÁöÃîµéÎ µÇç, ¢¢À îҩ Á¦ âÏÇÒÁö ËƢÙ. ÇüÄÀÚ ÀÏÝ ÀÚ¦ ÀûÀé ëÎ Î ÃâµÈÙ. µûÈÇ¥ ÀÚ("
)¦ ÃâÂÇÏí ÍÙé 鬦 Õ Ù© ÇüÄÀÚÀÇ ÀÌ ÔÀ» Ç¥ÃÇÑÙ. ÇüÄÀÚ ÁÙÙ "\n
", ÅÇ "\t
"Í ơÀ ¯ö ÁÀýÀÚ¦ »çëÇÒ ö ÀÖÙ.
ServerRoot
ÀÇ »óëƩÎÀÌÙ.
ÕÀÇ ÁÀ ƩÅëÎÇüÄ(Common Log Format, CLF)ÀÌó ÇüÄÀÎ Î ÇñÀ» âÏÇÑÙ. ©¯ Ù¥ À¥öµéµµ ÀÌ Ç¥Á ÇüÄÀΠΦ µéç, ©¯ Î ÇÁÎ¥ ÀÀ» ö ÀÖÙ. CLFÎ µç ÎÄÀÏ ÇñÀ ÙÀú ơƢÙ:
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
ÀÌÁ¦ Î ÇñÀÇ ¢ ÎÀ» íÇÑÙ.
127.0.0.1
(%h
)
logresolveÍ ơÀ Φ ÃÇÏ ÇÁÎ¥À» »çëÇÏ ÍÀÌ ÁÁÙ. ©â  IP ÁÖÒ »çëÀÚƢ »çëÇÏ ÄÄÇ»ÅÍ ÁÖÒƢ Ò ö ÀÖÙ. ÇÁÏà öƢ »çëÀÚÍ ö»çÀÌ ÁÀçÇÑÙé, ÄÄÇ»ÅÍ ÁÖÒƢ Ïó ÇÁÏÃÀÇ ÁÖÒƢ â쵃 ÍÀÌÙ.
-
(%l
)
identd
Ƣ Á¦ƩÇÒ Å¬óÀÌÀÇ RFC 1413 ÅÀÌÙ. ÀÌ Á Åì ÏÀ» ö âҡש碯, äÈ üµÇ »Î 碯ÀÌ Ïóé ÀýëÎ ÀÌ Á¦ »çëÇÏé ȵÈÙ. IdentityCheck
Ƣ On
ÀÌ Ïóé ÄÄ À¥ö ÀÌ Á¦ ËÁí õµÇÏÁöµµ ÊÂÙ.
frank
(%u
)
REMOTE_
ȯƩ¯öÎ ÑÜÁÙ. äûÀÇ »óÅÂÄÚµåƢ 401ÀÌóé ( Âüí) »çëÀÚƢ Á ÀÎÁõÀ» ÅÄÁö ÊÒÀÇÎ ÀÌ ƨÀ» ÏÀé ȵÈÙ. ¦ ÏȣΠȣÇÏÁö ÊÂÙé ÀÌ ÇñÀ ÀÌÀü Çñú ơÀÌ "-
"ÀÌÙ.
[10/Oct/2000:13:55:36 -0700]
(%t
)
[day/month/year:hour:minute:second zone]
day = ýÀÚ 2Ʃ
month = ýÀÚ 3Ʃ
year = ýÀÚ 4Ʃ
hour = ýÀÚ 2Ʃ
minute = ýÀÚ 2Ʃ
second = ýÀÚ 2Ʃ
zone = (`+' | `-') ýÀÚ 4Ʃ
%{format}t
¦ »çëÇÏ© Ù¥ ÇüÄÀΠãÀ» ÃâÂÇÒ ö ÀÖÙ. format
À C Ç¥Á óÀÌê¯ÀÇ strftime(3)
ú ơƢÙ.
"GET /apache_pb.gif HTTP/1.0"
(\"%r\"
)
GET
ÀÌÙ. µÑÂ, ŬóÀÌ碥 ÀÚ /apache_pb.gif
¦ äûÇÑÙ. Â, ŬóÀÌ碥 HTTP/1.0
ÇÁÎÅäÄÝÀ» »çëÇÑÙ. äûÁÙÀÇ ©¯ ÎÀ» µûÎ ÎÇÒ öµµ ÀÖÙ. ¦ µéî, ÇüÄÀÚ "%m %U%q %H
"À "%r
"ú ÈơÀÌ áµå, ƩÎ, ÁúÀÇÀÚ, ÇÁÎÅäÄÝÀ» ÎÇÑÙ.
200
(%>s
)
2326
(%b
)
-
"ÀÌÙ. »ëÀÌ Â Ʃì "0
"À» ÎÇÏÁé ëÅ %B
¦ »çëÇÑÙ.
ÀÚÁÖ »çëµÇ ٥ ÇüÄÀÚÀ áÇÕµÈÎÇüÄ(Combined Log Format)ÀÌÙ. ÙÀú ơÀÌ »çëÇÑÙ.
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{-agent}i\"" combined
CustomLog log/access_log combined
ÀÌ ÇüÄÀ µÎ ÇñÀ» õ ÃƢÇÑ ÍÀ» Á¦ÜÇÏí Common Î ÇüÄú ÏÀüÈ ơƢÙ. ÃƢµÈ ÇñµéÀ Û ÁöÃî %{header}i
¦ »çëÇÑÙ. ©â header ÀÚ碯 HTTP äû Çìõ ÀÌÀÌ Ã ö ÀÖÙ. ÀÌ ÇüÄÀÇ Á¢Ù ΠÙÀú ơƢÙ:
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)"
ÃƢµÈ ÇñÀ:
"http://www.example.com/start.html"
(\"%{Referer}i\"
)
/apache_pb.gif
¦ µÅ©ÇÏÅ ÇÔÇÑ »çÀÌÀÌÙ.)
"Mozilla/4.08 [en] (Win98; I ;Nav)"
(\"%{-agent}i\"
)
ÁÄÀÏ ©¯ CustomLog
ÁÙÀ î»Ô ÀÌÀü ReferLog
Í AgentLog
ÁöÃîÀÇ âÉÀ» Èä» ö ÀÖÂÁö ©ÁÙ.
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog logs/access_log common
CustomLog logs/referer_log "%{Referer}i -> %U"
CustomLog logs/agent_log "%{-agent}i"
Ç, ÀÌ Â CustomLog
ÁöÃî ÁÁ¢ Î ÇüÄÀ» ÁöÁÇÒ ö ÀÖÙ.
ŬóÀÌ äûÀÇ Ý µûó Çç ÇñÀ» Á¢Ù Î âÏÇÏÁöÊí ÍÀ» ҡסƢ ÀÖÙ. CustomLog ÁöÃî env=
À» »çëÇÏ© ȯƩ¯ö À¯« µûó äûÀ» ÁýîÖÅ »«Ù. ¦ µéé:
# loop-back ÀÎÅÍäÀÌ äûÀ» Ç¥ÃÇÑÙ
SetEnvIf Remote_Addr "127\.0\.0\.1" dontlog
# robots.txt ÄÀÏ ëÇÑ äûÀ» Ç¥ÃÇÑÙ
SetEnvIf Request_URI "^/robots\.txt$" dontlog
# ÓÁö¦ Î äÙ
CustomLog logs/access_log common env=!dontlog
Ù¥ Î µîÇ »çëÀÚÀÇ äûÀ» ÇÑ ÎÄÀÏ âÏÇÏí, ñµîÇ »çëÀÚÀÇ äûÀ Ù¥ ÎÄÀÏ âÏÇÏ Ʃì¦ »ý¢ÇÀÚ.
SetEnvIf Accept-Language "en" english
CustomLog logs/english_log common env=english
CustomLog logs/non_english_log common env=!english
ÁҡÇΠΠÅì ơÂÇÏí À¯¬ÇÏÁö, ÀÌÍÀÌ Î »ëÀ» ÁÀýÇÏ À¯ÀÏÇÑ ýÀ ÏÙ. ÎÄÀÏÀ öÀÇ µç ÇàµÀ» âÏÇÒҡ õ À¯ëÇÏÙ. Á ÇÏÁöÊ äûÀ» Á¦ÜÇÏí ÎÄÀÏÀ» ÇÏ ÍÀÌ õ Ù.
ÁҡÝ Ù»Û öÁµµ ÎÄÀÏ ÀúÀåµÇ ÁÀ Åì Ù. Á¢Ó ΠÅë äûç 1MB ÀÌ»ó ÁõƢÇÑÙ. áúÀûÀÎ âÁÀÇ Î¦ ÅâÅ Áöì ýÀΠΦ ÁÖâÀûÀÎ ÈÇÒ ÇÊäƢ ÀÖÙ. ÄÄ ÄÀÏÀ» íÀÖ µÈ èÓ ÀÌÀü ÎÄÀÏ âҡש碯 öƢ ÇÇàÁÀÏҡ Φ ȯÇÒ ö Ù. ëÅ ÎÄÀÏÀ» ÅâÅ ÁöîÈÄ ö¦ ÀçÃÀÛÇÏ©, ÎÄÀÏÀ» »õÎ î ÇÑÙ.
ÁÀÝÀ ÀçÃÀÛÀ» »çëÇÏé ö ŬóÀÌ碯Í âÁÀÇ ÈÀ ëâµÈ ¬áÀ» ÀÒÁöÊí »õ ÎÄÀÏÀ» ö ÀÖÙ. ¯ À̦ ÀÇ ö ÀµÈ äûÀÇ ñ¦ »Â µÈ ÀÌÀü ÎÄÀÏÀ» èÓ »çëÇ ÇÑÙ. ¯ÇÎ ÀçÃÀÛÇÑÈÄ ÎÄÀÏÀ» ÃÇÏâ Àü óҡ£ âÙ ÇÊäƢ ÀÖÙ. ÀÏÝÀûÀÎ ÙÀú ơÀÌ Î¦ ȯÇÏí, µÅ©Ʃ£À» ÀýàÇÏâÀÇ ÀÌÀü Φ ÃàÇÑÙ:
mv access_log access_log.old
mv error_log error_log.old
apache2ctl graceful
sleep 600
gzip access_log.old error_log.old
Φ ȯÇÏ ٥ ýÀ ÙÀ Àý íÇÒ ÄÀÌÇÁ Φ »çëÇÏ ÍÀÌÙ.
ÄÄ À¥ö Àù ÎÍ Á¢Ù Φ ÄÀÏ ÁÁ¢ ÁöÊí ÄÀÌÇÁ¦ ÅëÇ Ù¥ ÇÁÎÎ ö ÀÖÙ. ÀÌ âÉÀ» »çëÇÏé ö ÄÚµå¦ ÃƢÇÏÁöÊíµµ Åì À¯¬ÇÏÔ Î¦ ÃÇÒ ö ÀÖÙ. Φ ÄÀÌÇÁ âÀÇ ÄÀÏí ÀÚ碯 ÄÀÌÇÁÀÚ "|
"Í µÚ Ç¥ÁÀÔÂÀÎ Î ÇñÀ» ÀÀ» ÇÇàÄÀÏíÀ» ÀûÀé µÈÙ. ÄÄ öƢ ÃÀÛÇÒҡ ÄÀÌÇÁÎ ¬áÇÒ Î ÇÁΦ ÃÀÛÇÏí, öƢ ÇÇàµÇ µÈ ÇÁÎƢ ÁÀé Ùà ÃÀÛÇÑÙ. (ÀÌ Áö âÉҡש碯 ì碥 ÀÌ ýÀ» "ÏÀ» ö ÀÖ ÄÀÌÇÁ Î"óí Î¥Ù.)
ÄÀÌÇÁÎ ¬áµÈ Î ÇÁΠΠÄÄ httpd ÇÁÎƢ çìí, ÇÁÎÀÇ idµµ ơƢÙ. Áï, ÄÀÌÇÁÎ ¬áµÈ Î ÇÁÎ¥À Åë rootÎ ÇÇàµÈÙ. ¯ÇÎ ÇÁÎ¥À» £ÜÇÏí ÈÀüÇÏÔ µå ÍÀÌ Åì ÁäÇÏÙ.
ÄÀÌÇÁΠΣ Àüà íÉî¦ µûÈǥΠÀÀ» íÉÇÏó. ÀÌ Â Á¢Ù Î ëÇÑ ÍÀÌÁö, Àù εµ ÂùƢÁöÙ.
ö¦ ÀçÃÀÛÇÏÁöÊí Φ ȯÇÒ ö ÀÖ ÍÀÌ ÄÀÌÇÁ Φ »çëÇÏ ÁäÇÑ ÀÌÀ¯Ù. ÄÄ À¥ö À̦ ÀÇ rotatelogsó £ÜÇÑ ÇÁÎ¥À» ÇÔÇÑÙ. ¦ µéî 24ãҢ٠Φ ȯÇÑÙé:
CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common
Ù¥ »çÀÌ碯 cronologó ñÁÇÏÁö ÈÎÀ õ À¯¬ÇÑ Î È¯ ÇÁÎ¥ÀÌ ÀÖÙ.
ÁҡÇÎ ÎÍ ơÀÌ ÄÀÌÇÁ ΠÅì ơÂÇÑ µµÁö, Á ÃÇÏ µîÀÇ õ £ÜÇÑ ýÀÌ ƢÉÇÑ Ʃì »çëÇ ȵÈÙ.
À <VirtualHost> ÇÀÌ Ñ ÁÖö Á Î ÁöÃî¦ µÎé µç äûÀÌ ơÀ Á¢Ù ÎÍ Àù ÎÎ âϵÈÙ. ÀÌ ýÀ Ƣ»óÈ£稬ơÎ Ô ÅëèÃ碬¦ ÇÒ ö Ù.
ÄÀÏâúÀÚƢ ÎÁÇÑ Á¦Ƣ ÀÚÁÖ »ýÇÑÙ.
Á¢Ù ÎÀÇ Ʃì Åì ÁÁÀ ÇáÃ¥ÀÌ ÀÖÙ. Î ÇüÄÀÚ Ƣ»óÈ£碯 ëÇÑ Á¦ ÃƢÇÏé µç È£Ƣ ơÀ Φ »çëÇÏí, Á Φ Ƣ»óÈ£稬ơÎ ö ÀÖÙ. ¦ µéî, ÙÀ ÁöÃî¦ Áó.
LogFormat "%v %l %u %t \"%r\" %>s %b" comonvhost
CustomLog logs/access_log comonvhost
%v
 äûÀ» ñÇÏ Ƣ»óÈ£ ÀÌÀ» âÏÇÑÙ. Á split-logfile ơÀ ÇÁÎ¥ÀÎ Á¢Ù Φ Ƣ»óÈ£ơÎ ö ÀÖÙ.
üÃµÈ µâ | üÃµÈ ÁöÃî |
---|---|
ÄÄ À¥ö ÃÀÛÇÒҡ logs/httpd.pid
ÄÀÏ Î httpd ÇÁÎÀÇ process id¦ ÀúÀåÇÑÙ. ÀÌ ÄÀÏíÀ ÁÜú ÀçÃÀÛ äÀÌÁö¦ ÂüíÇÏó.
µöëÀ» µâÀÇ mod_cgi ¦ ÂüíÇÏó.
RewriteLogLevel ÁöÃîÎ ÁÀýÇÑÙ.
ƢÉÇÑ î: tr