mod_headers HTTP ¿äû Çì´õ¿Í ÀÀ´ä Çì´õ ¼öÁ¤ Extension mod_headers.c headers_module RequestHeader´Â ¾ÆÆÄÄ¡ 2.0¿¡¸¸ ÀÖ´Ù

ÀÌ ¸ðµâÀº HTTP ¿äû Çì´õ¿Í ÀÀ´ä Çì´õ¸¦ Á¶ÀýÇÏ°í ¼öÁ¤ÇÏ´Â Áö½Ã¾îµéÀ» Á¦°øÇÑ´Ù. Çì´õ¸¦ ÇÕÄ¡°Å³ª ´ëü, Á¦°ÅÇÒ ¼ö ÀÖ´Ù.

ó¸® ¼ø¼­

mod_headers°¡ Á¦°øÇÏ´Â Áö½Ã¾î´Â ¼­¹ö¼³Á¤ÀÇ °ÅÀÇ ¸ðµç Àå¼Ò¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ¼³Á¤ ¼½¼ÇÀ¸·Î °¨½Î¼­ Áö½Ã¾îÀÇ ¹üÀ§¸¦ Á¦ÇÑÇÒ ¼öµµ ÀÖ´Ù.

󸮼ø¼­´Â Áß¿äÇϸç, ¼³Á¤ÆÄÀÏ¿¡ ³ª¿Â ¼ø¼­¿Í ¼³Á¤ ¼½¼ÇÀÇ ¿µÇâÀ» ¹Þ´Â´Ù. ´ÙÀ½ µÎ Áö½Ã¾î¸¦ ¹Ý´ë·Î ÀûÀ¸¸é È¿°ú°¡ ´Þ¶óÁø´Ù.

RequestHeader append MirrorID "mirror 12"
RequestHeader unset MirrorID

À§¿Í °°ÀÌ ÀûÀ¸¸é MirrorID Çì´õ°¡ ³ª¿ÀÁö ¾Ê´Â´Ù. ¹Ý´ë·Î ÀûÀ¸¸é MirrorID Çì´õ¸¦ "mirror 12"·Î ¼³Á¤ÇÑ´Ù.

À̸¥(early) ó¸®¿Í ´ÊÀº(late) ó¸®

mod_headers¸¦ ¿äû Ãʱ⳪ ³ªÁß¿¡ Àû¿ëÇÒ ¼ö ÀÖ´Ù. º¸ÅëÀº ³»¿ë»ý¼ºÀÚ¸¦ ½ÇÇàÇϱâ Á÷Àü¿¡ ¿äû Çì´õ¸¦ ¼³Á¤ÇÏ°í ÀÀ´äÀ» ³×Æ®¿÷¿¡ ¾µ¶§ ÀÀ´ä Çì´õ¸¦ ¼³Á¤ÇÏ´Â ´ÊÀº(late) ¹æ½ÄÀ» »ç¿ëÇÑ´Ù. ½ÇÁ¦ ¼­ºñ½ºÇÏ´Â ¼­¹ö¿¡¼­´Â Ç×»ó ´À¸° ¹æ½ÄÀ» »ç¿ëÇ϶ó.

À̸¥(early) ¹æ½ÄÀº °³¹ßÀÚ¸¦ À§ÇØ °Ë»ç/µð¹ö±ë¿ëÀ¸·Î ¸¸µé¾ú´Ù. early Å°¿öµå¸¦ »ç¿ëÇÏ¿© Á¤ÀÇÇÑ Áö½Ã¾î´Â ¿äûÀ» ó¸®Çϱ⠽ÃÀÛÇÒ¶§ ¼³Á¤ÇÑ´Ù. Áï, ´Ù¸¥ ¿äûÀ» ¸ðÀǽÇÇèÇϰųª °Ë»ç¸¦ ÇϱâÀ§ÇØ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ÀÀ´äÀ» »ý¼ºÇϱâ Àü¿¡ ´Ù¸¥ ¸ðµâÀÌ ºÒ½Ã¿¡ Çì´õ¸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.

¿äû°æ·Î¿¡ ´ëÇÑ ¼³Á¤À» »ìÆ캸±â Àü¿¡ À̸¥ Áö½Ã¾î¸¦ ó¸®Çϱ⶧¹®¿¡ À̸¥ Çì´õ Áö½Ã¾î´Â ÁÖ¼­¹öÀ̳ª °¡»óÈ£½ºÆ® »ç¿ëÀå¼Ò¿¡¼­¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Ù. À̸¥ Áö½Ã¾î´Â ¿äû°æ·Î¿¡ ÀÇÁ¸ÇÒ ¼ö ¾ø±â¶§¹®¿¡ <Directory>³ª <Location>°°Àº »ç¿ëÀå¼Ò¿¡¼­ »ç¿ëÇÒ ¼ö ¾ø´Ù.

¿¹Á¦
  1. "TS"·Î ½ÃÀÛÇÏ´Â ¸ðµç ¿äû Çì´õ¸¦ ÀÀ´ä Çì´õ·Î º¹»çÇÑ´Ù. Header echo ^TS
  2. ÀÀ´ä¿¡ ¿äûÀ» ¹ÞÀº ½Ã°£°ú ¿äûÀ» ¼­ºñ½ºÇϴµ¥ °É¸± ½Ã°£À» ¾Ë·ÁÁÖ´Â MyHeader Çì´õ¸¦ Ãß°¡ÇÑ´Ù. Ŭ¶óÀ̾ðÆ®´Â ÀÌ Çì´õ¸¦ º¸°í ¼­¹öÀÇ ºÎÇϸ¦ ÃßÁ¤Çϰųª Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö°£ÀÇ º´¸ñÁ¡À» ãÀ» ¼ö ÀÖ´Ù. Header add MyHeader "%D %t"

    ÀÀ´ä¿¡ ´ÙÀ½°ú °°Àº Çì´õ°¡ »ý±ä´Ù.

    MyHeader: D=3775428 t=991424704447256
  3. Joe¿¡°Ô ¾È³ç Header add MyHeader "Hello Joe. It took %D microseconds \
    for Apache to serve this request."

    ÀÀ´ä¿¡ ´ÙÀ½°ú °°Àº Çì´õ°¡ »ý±ä´Ù.

    MyHeader: Hello Joe. It took D=3775428 microseconds for Apache to serve this request.
  4. ¿äû¿¡ "MyRequestHeader" Çì´õ°¡ ÀÖ´Â °æ¿ì¿¡¸¸ ¼±ÅÃÀûÀ¸·Î ÀÀ´ä¿¡ MyHeader¸¦ º¸³½´Ù. ƯÁ¤ Ŭ¶óÀ̾ðÆ®¿¡°Ô¸¸ ÀÀ´ä¿¡ Çì´õ¸¦ Ãß°¡ÇÒ¶§ À¯¿ëÇÏ´Ù. ÀÌ ¿¹Á¦°¡ µ¿ÀÛÇÏ·Á¸é mod_setenvif ¸ðµâÀÌ ÇÊ¿äÇÏ´Ù. SetEnvIf MyRequestHeader value HAVE_MyRequestHeader
    Header add MyHeader "%D %t mytext" env=HAVE_MyRequestHeader

    HTTP ¿äû¿¡ MyRequestHeader: value Çì´õ°¡ ÀÖ´Ù¸é, ÀÀ´ä¿¡ ´ÙÀ½°ú °°Àº Çì´õ°¡ »ý±ä´Ù.

    MyHeader: D=3775428 t=991424704447256 mytext
RequestHeader HTTP ¿äû Çì´õ¸¦ ±¸¼ºÇÑ´Ù RequestHeader set|append|add|unset header [value] [early|env=[!]variable] server configvirtual host directory.htaccess FileInfo

ÀÌ Áö½Ã¾î´Â HTTP ¿äû Çì´õ¸¦ ÇÕÄ¡°Å³ª ´ëü, Á¦°ÅÇÑ´Ù. ³»¿ë Çڵ鷯°¡ ½ÇÇàÇϱâ Á÷Àü¿¡ Çì´õ¸¦ ¼öÁ¤Çϱ⶧¹®¿¡ ¹ÞÀº Çì´õ¸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. ù¹ø° ¾Æ±Ô¸ÕÆ®¿¡ µû¶ó ±â´ÉÀÌ ´Ù¸£´Ù. ù¹ø° ¾Æ±Ô¸ÕÆ®·Î ¾Æ·¡ °ªÁß Çϳª¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

set
¿äû Çì´õ¸¦ ¼³Á¤ÇÑ´Ù. °°Àº À̸§À¸·Î ÀÌ¹Ì Çì´õ°¡ ÀÖ´Ù¸é ´ëüÇÑ´Ù
append
ÀÌ¹Ì Á¸ÀçÇÏ´Â °°Àº À̸§ÀÇ ¿äû Çì´õ¿¡ Ãß°¡ÇÑ´Ù. ±âÁ¸ Çì´õ¿¡ »õ·Î¿î °ªÀ» ÇÕÄ¡¸é, ±âÁ¸ Çì´õ¿Í »õ·Î¿î °ª »çÀÌ¿¡ ½°Ç¥¸¦ ºÙÀδÙ. ÀÌ´Â ¿©·¯ Çì´õ°ªÀ» ÁöÁ¤ÇÏ´Â HTTP Ç¥ÁØ ¹æ½ÄÀÌ´Ù.
add
Çì´õ°¡ ÀÌ¹Ì ÀÖ´õ¶óµµ ¿äû Çì´õ¸¦ Ãß°¡ÇÑ´Ù. ±×·¡¼­ °°Àº À̸§ÀÇ Çì´õ°¡ µÎ°³ (ȤÀº ¸¹ÀÌ) »ý±æ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì ÀÇ¿ÜÀÇ °á°ú°¡ ¹ß»ýÇÒ ¼ö Àֱ⶧¹®¿¡ º¸Åë ´ë½Å append¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.
unset
ÀÌ·± À̸§ÀÇ ¿äû Çì´õ°¡ ÀÖ´Ù¸é »èÁ¦ÇÑ´Ù. °°Àº À̸§À» °¡Áø Çì´õ°¡ ¿©·¯°³ ÀÖ´Ù¸é ¸ðµÎ Á¦°ÅÇÑ´Ù. value´Â ÀûÁö ¾Ê´Â´Ù.

¾Æ±Ô¸ÕÆ® µÚ¿¡ Çì´õ¸íÀÌ ³ª¿Â´Ù. Çì´õ¸í µÚ¿¡ ÄÝ·ÐÀ» ÀûÀ» ¼ö ÀÖÁö¸¸, ¾ø¾îµµ µÈ´Ù. ´ë¼Ò¹®ÀÚ´Â ¹«½ÃÇÑ´Ù. add, append, setÀ» »ç¿ëÇÒ¶§´Â ¼¼¹ø° ¾Æ±Ô¸ÕÆ® value°¡ ÇÊ¿äÇÏ´Ù. value ¾È¿¡ °ø¹éÀÌ ÀÖ´Ù¸é ½Öµû¿ÈÇ¥·Î ¹­¾î¾ß ÇÑ´Ù. unsetÀ» »ç¿ëÇÒ¶§´Â value¸¦ ÀûÀ¸¸é ¾ÈµÈ´Ù. value´Â ÀÏ¹Ý ¹®ÀÚ¿­À̳ª Çü½ÄÀ» ±â¼úÇÏ´Â ¹®ÀÚ¿­À̸ç, µÎ°¡Áö¸¦ °°ÀÌ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. Áö¿øÇÏ´Â Çü½Ä±â¼úÀÚ´Â Header¿Í °°À¸¹Ç·Î ÀÚ¼¼ÇÑ ³»¿ëÀº ±×°÷À» Âü°íÇ϶ó.

RequestHeader Áö½Ã¾î µÚ¿¡ ÇൿÀÌ ÀϾ Á¶°ÇÀ» Áö½ÃÇÏ´Â Ãß°¡ ¾Æ±Ô¸ÕÆ®³ª À̸¥ 󸮸¦ ¶æÇÏ´Â Å°¿öµå early°¡ ³ª¿Ã ¼ö ÀÖ´Ù. env=... ¾Æ±Ô¸ÕÆ®¸¦ »ç¿ëÇÑ °æ¿ì ÇØ´ç ȯ°æº¯¼ö°¡ Á¸ÀçÇÑ´Ù¸é (ȤÀº env=!...¿¡ ³ª¿Â ȯ°æº¯¼ö°¡ Á¸ÀçÇÏÁö ¾Ê´Ù¸é) RequestHeader Áö½Ã¾î°¡ µ¿ÀÛÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é Áö½Ã¾î´Â ¿äû¿¡ ¾Æ¹« ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù.

À̸¥ ¹æ½ÄÀÌ ¾Æ´Ï¶ó¸é fixup ´Ü°è¿¡¼­ ¿äû¿¡ ÇØ´çÇÏ´Â Çڵ鷯¸¦ ½ÇÇàÇϱâ Á÷Àü¿¡ RequestHeader Áö½Ã¾î¸¦ ó¸®ÇÑ´Ù. ±×·¡¼­ ºê¶ó¿ìÀú¿¡ µû¶ó ȤÀº ¾ÆÆÄÄ¡ ÀÔ·ÂÇÊÅÍ°¡ Çì´õ¸¦ µ¤¾î¾²°Å³ª ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.

Header HTTP ÀÀ´ä Çì´õ¸¦ ±¸¼ºÇÑ´Ù Header [condition] set|append|add|unset|echo header [value] [early|env=[!]variable] server configvirtual host directory.htaccess FileInfo

ÀÌ Áö½Ã¾î´Â HTTP ÀÀ´ä Çì´õ¸¦ ÇÕÄ¡°Å³ª ´ëü, Á¦°ÅÇÑ´Ù. ³»¿ë Çڵ鷯¿Í Ãâ·Â ÇÊÅÍ°¡ ½ÇÇàÇÑ Á÷ÈÄ¿¡ Çì´õ¸¦ ¼öÁ¤Çϱ⶧¹®¿¡ º¸³¾ Çì´õ¸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.

conditionÀº ¼±ÅÃÀûÀ¸·Î »ç¿ëÇϸç, °ªÀ¸·Î onsuccess ȤÀº always¸¦ »ç¿ëÇÑ´Ù. ÀÌ´Â ¾î¶² ³»ºÎ Çì´õÇ¥¿¡ µ¿ÀÛÇÒÁö¸¦ °áÁ¤ÇÑ´Ù. onsuccess´Â 2xx »óÅÂÄڵ带 ¶æÇÏ°í, always´Â (2xx¸¦ Æ÷ÇÔÇÑ) ¸ðµç »óÅÂÄڵ带 ¶æÇÑ´Ù. ƯÈ÷ ¾î¶² ¸ðµâÀÌ ¼³Á¤ÇÑ Çì´õ¸¦ ÇØÁ¦ÇÏ°í ½Í´Ù¸é, µÑÁß ¾î¶² °ÍÀ» »ç¿ëÇÒÁö Àß »ìÆìºÁ¾ß ÇÑ´Ù.

µÎ¹ø° ¾Æ±Ô¸ÕÆ®¿¡ µû¶ó ±â´ÉÀÌ ´Ù¸£´Ù. µÎ¹ø° ¾Æ±Ô¸ÕÆ®·Î ¾Æ·¡ °ªÁß Çϳª¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

set
ÀÀ´ä Çì´õ¸¦ ¼³Á¤ÇÑ´Ù. °°Àº À̸§À¸·Î ÀÌ¹Ì Çì´õ°¡ ÀÖ´Ù¸é ´ëüÇÑ´Ù. value¿¡ Çü½Ä¹®ÀÚ¿­À» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
append
ÀÌ¹Ì Á¸ÀçÇÏ´Â °°Àº À̸§ÀÇ ÀÀ´ä Çì´õ¿¡ Ãß°¡ÇÑ´Ù. ±âÁ¸ Çì´õ¿¡ »õ·Î¿î °ªÀ» ÇÕÄ¡¸é, ±âÁ¸ Çì´õ¿Í »õ·Î¿î °ª »çÀÌ¿¡ ½°Ç¥¸¦ ºÙÀδÙ. ÀÌ´Â ¿©·¯ Çì´õ°ªÀ» ÁöÁ¤ÇÏ´Â HTTP Ç¥ÁØ ¹æ½ÄÀÌ´Ù.
add
Çì´õ°¡ ÀÌ¹Ì ÀÖ´õ¶óµµ ÀÀ´ä Çì´õ¸¦ Ãß°¡ÇÑ´Ù. ±×·¡¼­ °°Àº À̸§ÀÇ Çì´õ°¡ µÎ°³ (ȤÀº ¸¹ÀÌ) »ý±æ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì ÀÇ¿ÜÀÇ °á°ú°¡ ¹ß»ýÇÒ ¼ö Àֱ⶧¹®¿¡ º¸Åë ´ë½Å append¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.
unset
ÀÌ·± À̸§ÀÇ ÀÀ´ä Çì´õ°¡ ÀÖ´Ù¸é »èÁ¦ÇÑ´Ù. °°Àº À̸§À» °¡Áø Çì´õ°¡ ¿©·¯°³ ÀÖ´Ù¸é ¸ðµÎ Á¦°ÅÇÑ´Ù. value´Â ÀûÁö ¾Ê´Â´Ù.
echo
ÀÌ·± À̸§ÀÇ ¿äû Çì´õ¸¦ ±×´ë·Î ÀÀ´ä Çì´õ·Î º¸³½´Ù. header¿¡ Á¤±ÔÇ¥Çö½ÄÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. value´Â ÀûÁö ¾Ê´Â´Ù.

¾Æ±Ô¸ÕÆ® µÚ¿¡ header À̸§ÀÌ ³ª¿Â´Ù. Çì´õ¸í µÚ¿¡ ÄÝ·ÐÀ» ÀûÀ» ¼ö ÀÖÁö¸¸, ¾ø¾îµµ µÈ´Ù. set, append, add, unset¿¡¼­ ´ë¼Ò¹®ÀÚ´Â ¹«½ÃÇÑ´Ù. echoÀÇ header À̸§Àº ´ë¼ö¹®ÀÚ¸¦ ±¸º°ÇÏ°í Á¤±ÔÇ¥Çö½ÄÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.

add, append, setÀ» »ç¿ëÇÒ¶§´Â ¼¼¹ø° ¾Æ±Ô¸ÕÆ® value°¡ ÇÊ¿äÇÏ´Ù. value ¾È¿¡ °ø¹éÀÌ ÀÖ´Ù¸é ½Öµû¿ÈÇ¥·Î ¹­¾î¾ß ÇÑ´Ù. value´Â ÀÏ¹Ý ¹®ÀÚ¿­À̳ª Çü½ÄÀ» ±â¼úÇÏ´Â ¹®ÀÚ¿­À̸ç, µÎ°¡Áö¸¦ °°ÀÌ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. value¿¡¼­ Áö¿øÇÏ´Â Çü½Ä±â¼úÀÚ´Â ´ÙÀ½°ú °°´Ù.

Çü½Ä¼³¸í
%% ÆÛ¼¾Æ® ±âÈ£
%t ¿äûÀ» ¹ÞÀº ½Ã°£À» ±¹Á¦Ç¥Áؽ÷Πepoch (1970³â 1¿ù 1ÀÏ) ÀÌÈÄ Áö³­ ¸¶ÀÌÅ©·ÎÃÊ ´ÜÀ§·Î. °ª ¾Õ¿¡ t=ÀÌ ºÙ´Â´Ù.
%D ¿äûÀ» ¹ÞÀº ½Ã°£ºÎÅÍ Çì´õ¸¦ ³×Æ®¿÷¿¡ ¾µ¶§±îÁö °É¸° ½Ã°£. ¿äûÀÇ ±â°£À» Àé´Ù. °ª ¾Õ¿¡ D=ÀÌ ºÙ´Â´Ù.
%{FOOBAR}e ȯ°æº¯¼ö FOOBARÀÇ ³»¿ë.
%{FOOBAR}s mod_sslÀÌ µ¿ÀÛÇÑ´Ù¸é, SSL ȯ°æº¯¼ö FOOBARÀÇ ³»¿ë.
ÁÖÀÇ

%s Çü½Ä Áö½ÃÀÚ´Â ¾ÆÆÄÄ¡ 2.1 ÀÌÈÄ¿¡¸¸ ÀÖ´Ù. ÀÌ Áö½ÃÀÚ´Â SSLOptions +StdEnvVars¸¦ »ç¿ëÇÏ´Â ºÎ´ãÀ» ´ú±âÀ§ÇØ %e ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¾î¶² ÀÌÀ¯¿¡¼­°Ç SSLOptions +StdEnvVars¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù¸é, %e´Â %s º¸´Ù ÈξÀ ´õ È¿À²ÀûÀÌ´Ù.

Header Áö½Ã¾î µÚ¿¡ ÇൿÀÌ ÀϾ Á¶°ÇÀ» Áö½ÃÇÏ´Â Ãß°¡ ¾Æ±Ô¸ÕÆ®³ª À̸¥ 󸮸¦ ¶æÇÏ´Â Å°¿öµå early°¡ ³ª¿Ã ¼ö ÀÖ´Ù. env=... ¾Æ±Ô¸ÕÆ®¸¦ »ç¿ëÇÑ °æ¿ì ÇØ´ç ȯ°æº¯¼ö°¡ Á¸ÀçÇÑ´Ù¸é (ȤÀº env=!...¿¡ ³ª¿Â ȯ°æº¯¼ö°¡ Á¸ÀçÇÏÁö ¾Ê´Ù¸é) Header Áö½Ã¾î°¡ µ¿ÀÛÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é Áö½Ã¾î´Â ¿äû¿¡ ¾Æ¹« ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù.

À̸¥ ¹æ½ÄÀÌ ¾Æ´Ï¶ó¸é ÀÀ´äÀ» ³×Æ®¿÷À¸·Î º¸³»±â Á÷Àü¿¡ Header Áö½Ã¾î¸¦ ó¸®ÇÑ´Ù. ±×·¡¼­ Çì´õ ÇÊÅÍ°¡ Ãß°¡ÇÏ´Â Çì´õ¸¦ Á¦¿ÜÇÑ ´ëºÎºÐÀÇ Çì´õ¸¦ ¼³Á¤Çϰųª µ¤¾î¾µ ¼ö ÀÖ´Ù.