<-
Apache > HTTP Server > Documentation > Version 2.2 > ¸ðµâ

Please note

This document refers to a legacy release (2.2) of Apache httpd. The active release (2.4) is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

¾ÆÆÄÄ¡ ¸ðµâ mod_unique_id

°¡´ÉÇÑ ¾ð¾î:  en  |  ja  |  ko 

ÀÌ ¹®¼­´Â ÃÖ½ÅÆÇ ¹ø¿ªÀÌ ¾Æ´Õ´Ï´Ù. ÃÖ±Ù¿¡ º¯°æµÈ ³»¿ëÀº ¿µ¾î ¹®¼­¸¦ Âü°íÇϼ¼¿ä.
¼³¸í:°¢ ¿äû¸¶´Ù À¯ÀÏÇÑ ½Äº°ÀÚ¸¦ °¡Áö´Â ȯ°æº¯¼ö¸¦ Á¦°øÇÑ´Ù
»óÅÂ:Extension
¸ðµâ¸í:unique_id_module
¼Ò½ºÆÄÀÏ:mod_unique_id.c

¿ä¾à

ÀÌ ¸ðµâÀº ¾î¶² Ưº°ÇÑ »óȲ¿¡¼­µµ "¸ðµç" ¿äûÁß¿¡¼­ À¯ÀÏÇϵµ·Ï º¸ÀåµÈ ½Äº°ÀÚ(identifier)¸¦ ¸ðµç ¿äû¿¡ Á¦°øÇÑ´Ù. ½ÉÁö¾î ÀÌ ½Äº°Àڴ Ưº°ÇÏ°Ô ±¸¼ºÇÑ Å¬·¯½ºÅÍÀÇ ¿©·¯ ÄÄÇ»Å͵é Áß¿¡¼­µµ À¯ÀÏÇÏ´Ù. °¢ ¿äû¸¶´Ù ȯ°æº¯¼ö UNIQUE_ID¸¦ ¼³Á¤ÇÑ´Ù. À¯ÀÏÇÑ ½Äº°ÀÚ´Â ¿©·¯°¡Áö ¿ëµµ·Î »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ¼³¸íÀº ÀÌ ¹®¼­ÀÇ ¹üÀ§¸¦ ³Ñ¾î¼±´Ù.

ÁÖÁ¦

Áö½Ã¾îµé

ÀÌ ¸ðµâ¿¡´Â Áö½Ã¾î°¡ ¾ø½À´Ï´Ù.

top

ÀÌ·Ð

¸ÕÀú À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ ¾ÆÆÄÄ¡ ¼­¹ö°¡ ¾î¶»°Ô µ¿ÀÛÇÏ´ÂÁö °£·«È÷ »ìÆ캸ÀÚ. Windows NT´Â ÇöÀç ÀÌ ±â´ÉÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù. À¯´Ð½º¿¡¼­ ¾ÆÆÄÄ¡´Â ¿©·¯ ÀÚ½ÄÀ» ¸¸µé°í, ÀÚ½Ä ÇÁ·Î¼¼½º´Â Çѹø¿¡ ÇÑ ¿äû¾¿ ó¸®ÇÑ´Ù. ÀÚ½ÄÀº ½ÇÇàÁß¿¡ ¿©·¯ ¿äûÀ» ó¸®ÇÑ´Ù. ¿©±â¼­ Áß¿äÇÑ °ÍÀº ÀڽĵéÀÌ ¼­·Î ÀڷḦ °øÀ¯ÇÏÁö ¾Ê´Â´Ù´Â Á¡ÀÌ´Ù. ¾ÕÀ¸·Î ÀÚ½ÄÀ» httpd ÇÁ·Î¼¼½º¶ó°í ÇÑ´Ù.

¿©·¯ ÄÄÇ»ÅÍ·Î À¥»çÀÌÆ®¸¦ ¼­ºñ½ºÇÑ´Ù¸é Ŭ·¯½ºÅÍ(cluster)¶ó°í ºÎ¸¥´Ù. °¢ ÄÄÇ»ÅÍ´Â ¿©·¯ ¾ÆÆÄÄ¡¸¦ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ÀÌµé ¸ðµÎ¸¦ "¿ìÁÖ"·Î º¸¸é, Ŭ·¯½ºÅÍ¿¡ ÀÖ´Â ÄÄÇ»Å͵鰣¿¡ ¸¹Àº Åë½Å¾øÀÌ °¢ ¿äû¸¶´Ù ¿ìÁÖ¿¡¼­ À¯ÀÏÇÑ ½Äº°ÀÚ¸¦ ¸¸µé ¼ö ÀÖ´Ù.

Ŭ·¯½ºÅÍ¿¡ ÀÖ´Â ÄÄÇ»ÅÍ´Â ´ÙÀ½ ¿ä±¸»çÇ×À» ¸¸Á·ÇØ¾ß ÇÑ´Ù. (ÄÄÇ»Å͸¦ ÇѴ븸 »ç¿ëÇÏ´õ¶óµµ ÄÄÇ»ÅÍ ½Ã°£À» NTP¿Í µ¿±âÇØ¾ß ÇÑ´Ù.)

¿î¿µÃ¼Á¦¿¡¼­ pid (ÇÁ·Î¼¼½º id)°¡ 32ºñÆ®¿¡ µé¾î°£´Ù°í °¡Á¤ÇÑ´Ù. ¿î¿µÃ¼Á¦°¡ pid·Î 32ºñÆ® ÀÌ»óÀ» »ç¿ëÇÑ´Ù¸é °£´ÜÇÏÁö¸¸ Äڵ带 ¼öÁ¤ÇØ¾ß ÇÑ´Ù.

ÀÌ·± °¡Á¤ÇÏ¿¡ ¿ì¸®´Â ¾î¶² ½ÃÁ¡¿¡¼­ Ŭ·¯½ºÅÍÀÇ ¾î¶² ÄÄÇ»ÅÍ¿¡ ÀÖ´Â ¾î¶² httpd ÇÁ·Î¼¼½º¸¦ ´Ù¸¥ ¸ðµç httpd ÇÁ·Î¼¼½ºµé°ú ±¸º°ÇÒ ¼ö ÀÖ´Ù. ÄÄÇ»ÅÍÀÇ IP ÁÖ¼Ò¿Í httpd ÇÁ·Î¼¼½ºÀÇ pid¸¸À¸·Îµµ ÃæºÐÈ÷ ±¸º°ÇÒ ¼ö ÀÖ´Ù. ±×·¡¼­ ¿äû¿¡ ´ëÇØ À¯ÀÏÇÑ ±¸º°ÀÚ¸¦ ¸¸µå·Á¸é ½Ã°£Â÷¸¦ ±¸º°ÇÒ ¼ö¸¸ ÀÖÀ¸¸é µÈ´Ù.

½Ã°£À» ±¸º°ÇϱâÀ§ÇØ À¯´Ð½º ½Ã°£(timestamp, ¼¼°è Ç¥Áؽ÷Π1970³â 1¿ù 1ÀÏ ÀÌÈÄ Áö³­ ÃÊ)°ú 16ºñÆ® Ä«¿îÅ͸¦ »ç¿ëÇÑ´Ù. À¯´Ð½º ½Ã°£Àº ÃÊ´ÜÀ§ÀÌ°í, Ä«¿îÅÍ´Â ÀÏ Ãʵ¿¾È 65536±îÁö Áõ°¡ÇÑ´Ù. ( ip_addr, pid, time_stamp, counter ) ¹­À½Àº ¾î¶² httpd ÇÁ·Î¼¼½º¿¡¼­ ÀÏ Ãʵ¿¾È 65536 ¿äûÀ» ±¸º°ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª Ä«¿îÅÍ´Â pid¸¦ Àç»ç¿ëÇÏ´Â ¹®Á¦¸¦ ÇØ°áÇØ¾ß ÇÑ´Ù.

httpd ÀÚ½ÄÀ» ¸¸µé¸é Ä«¿îÅÍ´Â ( ÇöÀç ¹Ð¸®ÃÊ ³ª´©±â 10 )À» 65536À¸·Î ³ª´« ³ª¸ÓÁö°¡ µÈ´Ù. (¸î¸î ½Ã½ºÅÛÀÇ ¹Ð¸®ÃÊ ½Ã°£¿¡¼­ ÇÏÀ§ ºñÆ®°¡ ÀÏÄ¡ÇÏÁö¾Ê´Â ¹®Á¦¶§¹®¿¡ ÀÌ °ø½ÄÀ» ¸¸µé¾ú´Ù.) À¯ÀÏÇÑ ½Äº°ÀÚ¸¦ ¸¸µé¶§ »ç¿ëÇÏ´Â ½Ã°£Àº À¥¼­¹ö°¡ ¿äûÀ» ¹ÞÀº ½Ã°£ÀÌ´Ù. Ä«¿îÅÍ´Â ½Äº°ÀÚ¸¦ ¸¸µé¶§¸¶´Ù Áõ°¡ÇÑ´Ù (±×¸®°í ´Ù½Ã ½ÃÀÛÇÑ´Ù).

Ä¿³ÎÀº ÇÁ·Î¼¼½º¸¦ Æ÷Å©ÇÒ¶§(fork) °¢ ÇÁ·Î¼¼½º¿¡ pid¸¦ ÇÒ´çÇÏ°í, pid´Â ´Ù½Ã ½ÃÀÛÇÒ ¼ö ÀÖ´Ù. (pid´Â ¸¹Àº À¯´Ð½º¿¡¼­ 16ºñÆ®ÀÌÁö¸¸, ÃÖ±Ù ½Ã½ºÅÛÀº 32ºñÆ®·Î È®ÀåÇß´Ù.) ±×·¡¼­ ½Ã°£ÀÌ Áö³ª¸é °°Àº pid¸¦ Àç»ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª °°Àº ½Ã°£¿¡ pid¸¦ Àç»ç¿ëÇÏÁö ¾Ê´Â´Ù¸é À§ÀÇ ¹­À½Àº À¯ÀÏÇÏ´Ù. Áï, ¿ì¸®´Â ½Ã½ºÅÛÀÌ ÀÏÃʵ¿¾È ÇÁ·Î¼¼½º¸¦ 65536°³ ÀÌ»ó ¸¸µéÁö ¾Ê´Â´Ù°í °¡Á¤ÇÑ´Ù. (¾î¶² À¯´Ð½º¿¡¼­´Â 32768°³ ÀÌ»ó ÇÁ·Î¼¼½º¸¦ ¸¸µé¸é pid Àç»ç¿ë ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖÁö¸¸, ÀÌ°ÍÁ¶Â÷µµ ÀϾ °Í°°Áö ¾Ê´Ù.)

½Ã°£ÀÌ ¾î¶² ÀÌÀ¯¿¡¼­°Ç ¹Ýº¹µÈ´Ù°í °¡Á¤Çغ¸ÀÚ. Áï, ½Ã½ºÅÛ ½Ã°è°¡ ²¿¿©¼­ ½Ã°£ÀÌ °ú°Å·Î µ¹¾Æ°¡´Â (ȤÀº ½Ã°è°¡ ³Ê¹« ¾Õ¼­°¡¼­ ¿Ã¹Ù·Î Àç¼³Á¤ÇÑÈÄ ¹Ì·¡¿¡ °°Àº ½Ã°£ÀÌ µÇ´Â) °æ¿ì´Ù. ÀÌ °æ¿ì pid¿Í ½Ã°£À» ¸ðµÎ Àç»ç¿ëÇÒ ¼ö ÀÖ´Ù. Ä«¿îÅÍÀÇ ÃʱâÈ­ °ø½ÄÀº ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ·Á°í °í¾ÈµÇ¾ú´Ù. ¿ì¸®´Â ½ÇÁ¦ ¹«ÀÛÀ§ ¼ýÀÚ·Î Ä«¿îÅ͸¦ ÃʱâÈ­ÇÏ±æ ¿øÇÏÁö¸¸, ¸¹Àº ½Ã½ºÅÛ¿¡¼­ ÀÌ·± ¼ö¸¦ ½±°Ô ¾òÀ» ¼ö ¾ø´Ù. (¿¹¸¦ µé¾î, seed°¡ ÇÊ¿äÇϱ⶧¹®¿¡ rand()¸¦ »ç¿ëÇÒ ¼ö ¾ø°í, ½Ã°£Àº ÃÖ¼ÒÇÑ ÀÏÃÊ ´ÜÀ§À̱⶧¹®¿¡ ½Ã°£À¸·Î seed·Î »ç¿ëÇÒ ¼ö ¾ø´Ù.) Áï ¿Ïº®ÇÑ ÇØ°áÃ¥ÀÌ ¾ø´Ù.

±×·³ ÀÌ ¹æ¹ýÀº ¾ó¸¶³ª ±¦ÂúÀ»±î? ÄÄÇ»ÅÍÁß Çϳª°¡ ¿äûÀ» ÃÊ´ç ÃÖ´ë 500°³ (½Ã½ºÅÛÀº ÀϹÝÀûÀ¸·Î Á¤ÀûÀÎ ÆÄÀÏÀ» Àü¼ÛÇÏ´Â °Í ÀÌ»óÀÇ ÀÛ¾÷À» ÇϹǷΠÀÌ ±ÛÀ» ¾²´Â ½ÃÁ¡¿¡¼­ »ó´çÈ÷ ³ôÀº °ªÀÌ´Ù.) ¼­ºñ½ºÇÑ´Ù°í °¡Á¤ÇÏÀÚ. µ¿½Ã¿¡ ¾ó¸¶¸¸Å­ÀÇ Å¬¶óÀ̾ðÆ®¸¦ ó¸®Çϴ°¡¿¡ µû¶ó ÀÚ½ÄÀÇ °³¼ö°¡ °áÁ¤µÈ´Ù. ±×·¯³ª ¿ì¸®´Â ºñ°üÀûÀ¸·Î ÇÑ ÀÚ½ÄÀÌ ¿äûÀ» ÃÊ´ç 500°³ ó¸®ÇÒ ¼ö ÀÖ´Ù°í °¡Á¤ÇÑ´Ù. Àç»ç¿ëÇÑ pid¸¦ °¡Áø ÀÚ½ÄÀÇ 500°³ ¿äû°ú ÀÌÀü ÀÚ½ÄÀÇ 500°³ ¿äûÀÇ Ä«¿îÅÍ°ªÀÌ °ãÄ¥ ¼ö ÀÖ´Â Ä«¿îÅÍ ½ÃÀÛ°ª °æ¿ì¼ö´Â 1000°³ÀÌ´Ù. ±×·¡¼­ (ÃÊ´ÜÀ§¿¡¼­) ÀÚ½ÄÀÌ Ä«¿îÅÍ°ªÀ» ¹Ýº¹ÇÏ¿© À¯ÀϼºÀÌ ±úÁú È®·üÀº 1.5%ÀÌ´Ù. ÀÌ°ÍÀº ¸Å¿ì ºñ°üÀûÀÎ °¡Á¤À̸ç, ½ÇÁ¦ ÀÌ·² °æ¿ì´Â »ó´çÈ÷ ´õ ³·´Ù. ±×·¡µµ ½Ã½ºÅÛ¿¡¼­ ÀÌ·± ÀÏÀÌ ¹ß»ýÇÒ °Í °°´Ù¸é (¼Ò½º¸¦ ¼öÁ¤ÇÏ¿©) Ä«¿îÅ͸¦ 32ºñÆ®·Î ¸¸µé¾î¶ó.

¼¶¸ÓŸÀÓ¶§¹®¿¡ ½Ã°è°¡ "µÚ·Î °¡´Â" °ÍÀ» °ÆÁ¤ÇÒÁöµµ ¸ð¸¥´Ù. ±×·¯³ª ¿©±â¼­ »ç¿ëÇÏ´Â ½Ã°£Àº ±¹Á¦ Ç¥ÁؽÃ(UTC), Áï ½Ã°£ÀÌ "Ç×»ó" ¾ÕÀ¸·Î °¡¹Ç·Î ¹®Á¦°¡ ¾ø´Ù. x86±â¹Ý À¯´Ð½º¿¡¼­´Â ÀûÀýÇÑ ¼³Á¤ÀÌ ÇÊ¿äÇÏ´Ù. ¸ÞÀκ¸µå ½Ã°è°¡ UTC¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤ÇØ¾ß ÇÑ´Ù. ±×·¯³ª NTP¸¦ »ç¿ëÇÑ´Ù¸é Àç½ÃÀÛÈÄ Á¶±Ý Áö³ª¸é UTC ½Ã°£¿¡ ¿Ã¹Ù·Î ¸ÂÃá´Ù.

ȯ°æº¯¼ö UNIQUE_ID´Â MIME base64 ÀÎÄÚµù°ú ºñ½ÁÇÑ ¹æ¹ýÀ¸·Î 112ºñÆ® (32ºñÆ® IP ÁÖ¼Ò, 32ºñÆ® pid, 32ºñÆ® ½Ã°£, 16ºñÆ® Ä«¿îÅÍ) ¹­À½À» ¾ËÆĺª [A-Za-z0-9@-]·Î Ç¥ÇöÇÑ´Ù. ½ÇÁ¦ MIME base64 ¾ËÆĺªÀº [A-Za-z0-9+/]ÀÌÁö¸¸ +¿Í /´Â URL¿¡¼­ Ưº°ÇÑ Àǹ̷Π»ç¿ëÇϹǷΠÁ¦¿ÜÇß´Ù. ¸ðµç °ªÀ» ³×Æ®¿÷ ¹ÙÀÌÆ®¼ø¼­·Î ÀÎÄÚµùÇϱ⶧¹®¿¡ ´Ù¸¥ ¹ÙÀÌÆ®¼ø¼­¸¦ »ç¿ëÇÏ´Â ¾ÆÅ°ÅØÃÄ°£¿¡ °ªÀÌ °°´Ù. ½ÇÁ¦ ÀÎÄÚµù ¼ø¼­´Â ½Ã°£, IP ÁÖ¼Ò, pid, Ä«¿îÅÍ ¼ø¼­ÀÌ´Ù. ÀÌ ¼ø¼­¿¡´Â ¾î¶² ¸ñÀûÀÌ ÀÖÁö¸¸, ÇÁ·Î±×·¥Àº ÀÎÄÚµù ¼ø¼­¿¡ ÀÇÁ¸ÇÏ¿© °ªµéÀ» ºÐ¼®ÇÏ¸é ¾ÈµÊÀ» °­Á¶ÇÑ´Ù. ÇÁ·Î±×·¥Àº ÀÎÄÚµùµÈ UNIQUE_ID Àüü¸¦ ÇÑ ´ÜÀ§·Î »ý°¢ÇÏ°í, ´Ù¸¥ UNIQUE_ID¿Í µ¿ÀÏÇÑÁö¸¸ ºñ±³ÇÒ ¼ö ÀÖ´Ù.

¼ø¼­´Â ¾ÕÀ¸·Î ±âÁ¸ÀÇ UNIQUE_ID µ¥ÀÌÅͺ£À̽º¿Í Ãæµ¹À» ¿°·ÁÇÏÁö¾Ê°í ÀÎÄÚµùÀ» º¯°æÇÒ ¼ö ÀÖµµ·Ï °í¾ÈÇß´Ù. »õ·Î¿î ÀÎÄÚµùÀº ù Ç׸ñÀ¸·Î ½Ã°£À» »ç¿ëÇϰųª, °°Àº ¾ËÆĺª°ú ºñÆ® ±æÀ̸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ½Ã°£ÀÌ ±âº»ÀûÀ¸·Î Áõ°¡ÇÏ´Â °ªÀ̹ǷΠŬ·¯½ºÅÍ¿¡ ÀÖ´Â ¸ðµç ÄÄÇ»ÅÍ°¡ ¿äû ¼­ºñ½º¸¦ Áß´ÜÇÏ°í ÀÌÀü ÀÎÄÚµù Çü½ÄÀ» ±×¸¸ »ç¿ëÇϱâÀ§ÇØ ±âÁØ ÃÊ(flag second)¸¸À¸·Î ÃæºÐÇÏ´Ù. ÀÌÈÄ ¿äûÀ» Àç°ÔÇÏ°í »õ·Î¿î ÀÎÄÚµùÀ» ½ÃÀÛÇÒ ¼ö ÀÖ´Ù.

¿ì¸®´Â ÀÌ ¹æ¹ýÀÌ ÀÌ ¹®Á¦¿¡ ´ëÇÏ¿© »ó´ëÀûÀ¸·Î Æ÷Æð¡´ÉÇÑ ÇØ°áÃ¥À̶ó°í ¹Ï´Â´Ù. ÀÌ ¹æ¹ýÀº Windows NT¿Í °°Àº ¸ÖƼ¾²·¹µå ½Ã½ºÅÛÀ¸·Î È®ÀåÇÒ ¼ö ÀÖ°í, ¾ÕÀ¸·Î ¿ëµµ¿¡ µû¶ó È®ÀåÇÒ ¼ö ÀÖ´Ù. ¹Ì·¡¿¡ ÇÊ¿äÇѸ¸Å­ ´õ ±ä ½Äº°ÀÚ¸¦ ¸¸µé ¼ö Àֱ⶧¹®¿¡ »ý¼ºÇÑ ½Äº°ÀÚ´Â ±âº»ÀûÀ¸·Î ¿µ¿øÇÑ ¼ö¸íÀ» °¡Áø´Ù. ±âº»ÀûÀ¸·Î Ŭ·¯½ºÅÍÀÇ ÄÄÇ»ÅÍµé »çÀÌ¿¡ Åë½ÅÀÌ ÇÊ¿ä¾ø°í (ºÎÇÏ°¡ ÀÛÀº NTP µ¿±â¸¸ ÇÊ¿äÇÏ´Ù), httpd ÇÁ·Î¼¼½º »çÀÌ¿¡ Åë½Åµµ ÇÊ¿ä¾ø´Ù (Ä¿³ÎÀÌ ºÎ¿©ÇÏ´Â pid°ªÀÌ ¾Ï¹¬ÀûÀÎ Åë½ÅÀÌ´Ù). ¸Å¿ì ƯÀÌÇÑ »óȲÀ̶ó¸é ÀνÄÀÚ Å©±â¸¦ ÁÙÀÏ ¼ö ÀÖÁö¸¸ ´õ ¸¹Àº Á¤º¸¸¦ °¡Á¤ÇØ¾ß ÇÑ´Ù. (¿¹¸¦ µé¾î, ¾î¶² »çÀÌÆ®¿¡¼­ 32ºñÆ® IP ÁÖ¼Ò ±¸ºÐÀº ºÒÇÊ¿äÇÏ°Ô Å©Áö¸¸, À̸¦ ÁÙÀÌ´Â ¹æ¹ýÀº »óȲ¿¡ µû¶ó ´Ù¸£´Ù.)

°¡´ÉÇÑ ¾ð¾î:  en  |  ja  |  ko 

top

Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.