1990³â~ 2008³â ¼¼°è ÀÎÅÍ³Ý »ç¿ëÀÚ¼ö[WorldBank]
À¥¿¡¼ »ç¿ëµÇ´Â ¾ð¾îÀÎ HTML(HyperText Markup Language)ÀÇ ±âº» ±â´ÉÀº ¡®(1) ½ºÅ¸ÀÏ(¿¹: ¹ØÁÙ, ±½°Ô)ÀÌ ÀÖ´Â ¹®¼+ (2) ¹®¼°£ ¸µÅ©¡¯ ¶ó°í »ý°¢ÇϽøé Å« ¹«¸®°¡ ¾øÀ» °Í °°½À´Ï´Ù. ±×·¸´Ù¸é, ¹®¼¿¡ ½ºÅ¸ÀÏÀ̳ª ¸µÅ©¸¦ ¾î¶»°Ô ÀúÀåÇÏ´Â °ÍÀϱî¿ä? ¿ÊÀ» »ç¸é ¿Ê¿¡ ű×(²¿¸®Ç¥, Tag)¸¦ ºÙ¿©¼ ű׿¡ ¿ÊÀÇ Å©±â, °¡°Ý µîÀ» µû·Î Ç¥½ÃÇÏ´Â °Í°ú °°ÀÌ, HTMLµµ ű׶ó´Â ¹æ¹ýÀ» ÅëÇØ ÇÊ¿äÇÑ Á¤º¸¸¦ Ç¥½ÃÇÕ´Ï´Ù. ¾Æ·¡ ±×¸²¿¡¼ <B>, <U>¿Í °°ÀÌ ÅؽºÆ®¿¡ µû·Î Á¤º¸¸¦ Ç¥½ÃÇØÁØ ºÎºÐÀ» ű׶ó°í ºÎ¸¨´Ï´Ù. HTMLÀº ¹Ì¸® ¾à¼ÓµÈ ű×ÀÇ Á¤º¸¸¦ ÅëÇØ ½ºÅ¸ÀÏ ¹× ¸µÅ©¸¦ Ç¥ÇöÇÕ´Ï´Ù.
ÀÎÅÍ³Ý ÀͽºÇ÷η¯³ª ÆÄÀ̾î Æø½º¿Í °°Àº À¥ ºê¶ó¿ìÀú¸¦ ÅëÇØ ÄÚµåºÎºÐÀ» ºÒ·¯¿À¸é, À§ÀÇ ±×¸²°ú °°ÀÌ Å±×ÀÇ ³»¿ëÀ» ¡®Çؼ®(Interpret)¡¯Çؼ º¸¿©ÁÝ´Ï´Ù. ±âº»ÀûÀÎ À¥ ºê¶ó¿ìÀúÀÇ ±â´ÉÀº ÀÎÅͳݿ¡ ÀÖ´Â HTML ¹®¼¸¦ ¹Þ¾Æ¿Â ÈÄ À§ÀÇ ±×¸²°ú °°ÀÌ Çؼ®Çؼ º¸¿©ÁÖ´Â °ÍÀÔ´Ï´Ù. ÀÌ·¯ÇÑ Å±׵éÀÇ »ç¿ë ¹æ¹ýÀº Ç¥ÁØÀ¸·Î ¹Ì¸® ¾à¼ÓµÇ¾î ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é <B>´Â ±½°Ô, <U>´Â ¹ØÁÙ ÀÌ·± ½ÄÀ¸·Î ¹Ì¸® Á¤ÇØÁ® ÀÖ´Â °ÍÀÌÁö¿ä. ¾î¶² »ç¶÷ÀÌ <B>°¡ ¾Æ´Ï¶ó <BOLD>¸¦ ¾²°í ½Í´õ¶óµµ, ¹Ì¸® ¾à¼ÓµÈ Ç¥ÁصéÀ» ÁöÅ°Áö ¾ÊÀ¸¸é ºê¶ó¿ìÀú¿¡¼ À̸¦ Çؼ®ÇÒ ¼ö ¾ø°Ô µË´Ï´Ù. ±¹Á¦±â°ü¿¡¼´Â ÀÌ¿¡ ´ëÇؼ Ç¥ÁؾÈ(RFC: Request for Comments)À» ¸¸µé¾ú´Âµ¥, HTMLÀÇ °æ¿ì RFC 1866À̶ó´Â ¹®¼¸¦ ÅëÇØ »ç¿ë¹ýÀ» ¸í½ÃÇÏ°í ÀÖ½À´Ï´Ù. [2] Ç¥ÁØÀ̶ó°í ¸»Çϸé, ¹º°¡ ´ë´ÜÇØ º¸ÀÌÁö¸¸, »ç½Ç ¼³¸íÇÑ °Í°ú °°ÀÌ ¡°<B>¶ó°í ÇÏ¸é ±½°Ô Ç¥½ÃÇϱâ·Î ÇÑ´Ù¡± ¿Í °°Àº Á¤ÇØÁø ¾à¼ÓÀ̳ª, ¡°¾î¶»°Ô Ç¥½ÃÇÏ¸é ¹®Á¦ »ý±æ ¼ö ÀÖÀ¸´Ï À¢¸¸Çϸé ÇÏÁö ¸» °Í(Recommendation)¡±, ¡°ÀÌ°Ç ²À Àû¾îÁà¾ß ÇÔ(Mandatory)¡± ¹¹ ÀÌ·± ³»¿ëµéÀÇ ¸®½ºÆ®¶ø´Ï´Ù. »ç½Ç, ÅÂ±× µîÀº Ç¥ÁØ¿¡¼ Áö¿øÇÏÁö ¾Ê´Â ¹æ¹ýÀ¸·Î ÀÛ¼º ÇÏ´õ¶óµµ, ºê¶ó¿ìÀú¿¡¼ Áö¿øÇÑ´Ù¸é ±â¼úÀûÀ¸·Î´Â ¹®Á¦°¡ ¾ø½À´Ï´Ù. ±×·¯³ª, ÆíÀǼº Ãø¸é¿¡¼´Â ¹®Á¦°¡ »ý±æ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é ÃÊâ±âÀÇ ºê¶ó¿ìÀúµéÀº Ç¥ÁØ¿¡ ¾ø´Â ű׵éÀ» Áö¿øÇؼ, ÀͽºÇ÷η¯¿¡¼ º¸ÀÌ´Â ÆäÀÌÁö°¡ ³Ý½ºÄÉÀÌÇÁ (ÆÄÀ̾îÆø½ºÀÇ Àü½ÅÀÔ´Ï´Ù)¿¡¼ Àß ¾Èº¸À̰ųª, ±× ¹Ý´ëÀÇ Çö»óÀÌ ³ªÅ¸³ª±âµµ Çß½À´Ï´Ù.
ÀÎÅͳݰú ÇÁ·ÎÅäÄÝ
HTMLÀº ÅؽºÆ®(HyperText)¸¦ ű×(Tag)¸¦ ÀÌ¿ëÇؼ Á¤º¸(½ºÅ¸ÀÏ, ¸µÅ© µî)¸¦ ÀúÀåÇÑ ¾ð¾îÀÔ´Ï´Ù. ±×·¯³ª, ÀÎÅÍ³Ý »ó¿¡¼ HTMLÀ» ÁÖ°í ¹Þ±â À§Çؼ´Â Á¤ÇØÁø ±ÔÄ¢ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÇÁ·ÎÅäÄÝ(Protocol)ÀÇ Àǹ̴ ÀÎÅÍ³Ý »ó¿¡¼ ¹Ì¸® Á¤ÇØÁø Åë½Å ±Ô¾àÀ» ÀǹÌÇϴµ¥, ´ë´ÜÇÑ °Ç ¾Æ´Ï°í, ¹Ì¸® ¾à¼ÓÇØ ³õÀº ±ÔÄ¢ÀÔ´Ï´Ù. ¿¹¸¦ µé¸é, ö¼ö¶ó´Â »ç¶÷ÀÌ Áß±¹Áý ÄÄÇ»ÅÍ¿¡ Á¢¼ÓÇؼ ¡°BBB¡±¶ó°í º¸³»¸é, Áß±¹Áý¿¡¼´Â ¡°¹è°íÆÄ¡±¶ó°í Çؼ®ÇÏ°í, ¡°ººÀ½¹ä¡±À̶ó´Â ÀÀ´äÀ» º¸³»±â·Î ¹Ì¸® ±ÔÄ¢À» ¸¸µé¾ú´Ù°í »ý°¢Çغ¾½Ã´Ù, À̰͵µ ÀÏÁ¾ÀÇ ÇÁ·ÎÅäÄÝÀÔ´Ï´Ù. ÇÁ·ÎÅäÄÝÀº ½ÇÁ¦·Î ¾à¼ÓÀ» Á¤Çϱ⠳ª¸§ÀÔ´Ï´Ù. Ç¥ÁØÀ» ¸¸µå´Â »ç¶÷µéÀº HTML ¹®¼¸¦ ÀÎÅÍ³Ý »ó¿¡¼ ÁÖ°í ¹Þ´Â ¹æ½Ä¿¡ ´ëÇؼµµ Ç¥ÁØ ±Ô¾àÀ» ¸¸µé¾ú´Âµ¥, À̸¦ HTTP(HyperText Transfer Protocol)¶ó°í ºÎ¸¨´Ï´Ù. [3] Ç®¾î À̾߱âÇÏ¸é ¡°Á¤º¸°¡ µé¾î°£ ÅؽºÆ®(HyperText)¸¦ Àü¼ÛÇÏ´Â ÇÁ·ÎÅäÄÝ(±ÔÄ¢)¡±À̶ó´Â ¶æÀÔ´Ï´Ù. À¥ ºê¶ó¿ìÀú¿¡ ÁÖ¼Ò Ã¢¿¡¼ ÀÚµ¿À¸·Î HTTP¶ó°í ºÙ°Ô µÇ´Â °ÍÀ» ¸¹ÀÌµé º¸¼ÌÀ» ÅÙµ¥¿ä, ¹Ù·Î ±×°Ì´Ï´Ù! :)
ÀÌ HTTP ÇÁ·ÎÅäÄÝÀÇ ±âº»Àº ÀÇ¿Ü·Î °£´ÜÇÕ´Ï´Ù. ³» ÄÄÇ»Å͸¦ Ŭ¶óÀ̾ðÆ®(Client)¶ó°í ºÎ¸£°í, ¿ì¸®°¡ Á¢¼ÓÇÏ´Â ÄÄÇ»ÅÍ(¿¹¸¦ µé¸é ±¸±Û¿¡¼ ¼ºñ½º¸¦ Á¦°øÇÏ´Â ÄÄÇ»ÅÍ)¸¦ ¼¹ö(Server)¶ó°í ºÎ¸£°Ú½À´Ï´Ù. HTMLÀº öÀúÇÏ°Ô ´ÙÀ½°ú °°Àº ÀýÂ÷·Î ¿òÁ÷ÀÔ´Ï´Ù. ÁÖ1)
(1) Ŭ¶óÀ̾ðÆ®´Â ¼¹ö¿¡°Ô HTML ÆäÀÌÁö¸¦ ´Þ¶ó°í ¿äûÇÕ´Ï´Ù. (¿ë¾î·Î´Â Request¶ó°í ÇÕ´Ï´Ù.)
(2) ¼¹ö´Â Ŭ¶óÀ̾ðÆ®¿¡ HTML ÆäÀÌÁö¸¦ ³Ñ°ÜÁÝ´Ï´Ù. (¿ë¾î·Î´Â Response¶ó°í ÇÕ´Ï´Ù)
Ŭ¶óÀ̾ðÆ®´Â ¹«Á¶°Ç ´Éµ¿ÀûÀ¸·Î ¿äûÇÏ°í, ¼¹ö´Â ¹«Á¶°Ç ¼öµ¿ÀûÀ¸·Î 1ȸ ÀÀ´äÇÏ´Â °ÍÀÌ µÎ ÄÄÇ»ÅÍÀÇ ¿ªÇÒÀÔ´Ï´Ù. ¸Þ½ÃÁö¸¦ ¼·Î ÁÖ°í ¹Þ´Â °ÍÀº ¿ì¸®°¡ ¸Þ½ÅÀú³ª Ä«Ä«¿ÀÅå °°Àº °÷¿¡¼ ¸Þ½ÃÁö¸¦ ÁÖ°í ¹Þ´Â °ÍÀ¸·Î »ý°¢ÇÏ¸é ¹«³ÇÕ´Ï´Ù. (¼¹ö´Â Àý´ë ¸ÕÀú ³ª¿¡°Ô ¸»À» °ÉÁö ¾Ê½À´Ï´Ù. ³»°¡ ¸»ÇÏ¸é ´ë²ÙÇÒ »ÓÀÔ´Ï´Ù! ±×°Íµµ ¸» °É ¶§¸¶´Ù µü Çѹø¾¿¸¸ ´ë²ÙÇÕ´Ï´Ù) ¾Æ·¡´Â Àü¼ÛµÇ´Â ¸Þ½ÃÁöÀÇ ¿¹ÀÔ´Ï´Ù.
Á» ´õ ½±°Ô Çؼ®ÇÏ¸é ¾Æ·¡¿Í °°Àº ¸»ÀÌÁö¿ä
Ŭ¶óÀ̾ðÆ®´Â ÇÊ¿äÇÑ ÆäÀÌÁö³ª À̹ÌÁö µîÀÌ ÀÖÀ» ¶§¸¶´Ù, À§¿Í °°Àº ¹æ¹ýÀ¸·Î ¸Å¹ø ÀÏÀÏÀÌ ¼¹ö¿¡°Ô ¿äûÇÕ´Ï´Ù. ´ÙÀ½Àº ½ÇÁ¦·Î ¸Þ½ÃÁö¸¦ ÁÖ°í ¹Þ´Â °ÍÀ» ĸÃçÇÑ °ÍÀÔ´Ï´Ù. ÁÖ2)
À§ÀÇ ¿¹´Â ÅؽºÆ®¸¦ ÅëÇØ ¼¹ö¿Í Ŭ¶óÀ̾ðÆ® °£ÀÇ Request¿Í Response ¸Þ½ÃÁöÀÇ Àü¼ÛÀ» º¸¿©ÁÖ°í ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ Request/Response ¹æ½ÄÀÇ Àü¼Û ¹æ½ÄÀº ´Ü¼øÇϱ⠶§¹®¿¡, º»·¡ÀÇ ¸ñÀûÀÎ ¹®¼¸¦ Àü¼ÛÇÏ´Â µ¥¿¡ ÃÖÀûÈ µÇ¾î ÀÖ½À´Ï´Ù. Áï, ´Ù½Ã ¸»Çϸé HTTP°¡ Á¦°øÇÒ ¼ö ÀÖ´Â ¼ºñ½ºÀÇ ÇÑ°è´Â ºÐ¸íÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¼¹ö´Â ¹«Á¶°Ç Ŭ¶óÀ̾ðÆ®ÀÇ ¿äû¿¡ ¼öµ¿ÀûÀ¸·Î ÀÀ´äÇØ¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù. ¼¹ö´Â Ŭ¶óÀ̾ðÆ®·Î µ¥ÀÌÅ͸¦ Á÷Á¢ Àü¼ÛÇØ ÁÙ ¼ö ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î À¥À¸·Î ü½º °ÔÀÓ ¼ºñ½º¸¦ ¸¸µç´Ù°í »ý°¢Çغ¸°Ú½À´Ï´Ù.
(1) »ç¶÷1ÀÌ ¸»À» ¿òÁ÷¿© ¿òÁ÷ÀÎ À§Ä¡¸¦ ¼¹ö·Î º¸³À´Ï´Ù. (»ç¶÷1 --> ¼¹ö)
(2) ¼¹ö´Â »ç¶÷1¿¡°Ô Àß ¿Å°å´Ù°í ÀÀ´äÇÕ´Ï´Ù.
(3) ±×·¯³ª »ç¶÷2´Â ³» Â÷·Ê°¡ ÁøÇàµÇ¾ú´ÂÁö ¾Æ´ÑÁö¸¦ ¾Ë ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé, ¼¹ö´Â Ŭ¶óÀ̾ðÆ®·Î Á÷Á¢ ³»¿ëÀ» º¸³¾ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù. (¸»¾¸ µå·ÈµíÀÌ HTTP¿¡¼ ¼¹ö´Â Ŭ¶óÀ̾ðÆ®ÀÇ ¿äû¿¡ ´ëÇؼ¸¸ ¼öµ¿ÀûÀ¸·Î ´ë´äÇÕ´Ï´Ù)
ÀÌ·¯ÇÑ ¸íÈ®ÇÑ ÇÑ°è´Â À¥À» ÅëÇØ ´Ù¾çÇÑ ¼ºñ½º(Áõ±Ç, °ÔÀÓ µîµî)¿Í ¿ä±¸»çÇ×À» Á¦°øÇØ¾ß ÇÏ´Â, Çö´ëÀÇ À¥ ȯ°æ¿¡¼ ¾×Ƽºê¿¢½º(ActiveX)³ª Ç÷¡½Ã(Flash) µîÀ» ÇÊ¿ä·Î ÇÏ°Ô µÇ´Â ¹è°æÀÌ µÇ±âµµ ÇÕ´Ï´Ù.
´ÙÀ½ À̾߱⿡¼´Â °íÁ¤µÈ ¹®¼ÀÎ HTML ¹®¼·Î ¾î¶»°Ô À¥ ¼ºñ½º¸¦ ÇÒ ¼ö ÀÖ´ÂÁö, CGI(Common Gateway Interface) Æз¯´ÙÀÓ¿¡ ´ëÇؼ »ìÆ캸°Ú½À´Ï´Ù.
ÁÖ1) ½ÇÁ¦ÀÇ HTTP ÇÁ·ÎÅäÄÝÀÇ ±Ô¾àÀº ¹®¼¸¦ ÀúÀåÇÏ´Â PUT, ¹®¼¸¦ Áö¿ì´Â DELETE µîÀÇ ¿©·¯ °¡Áö ¾×¼ÇÀ» °¡ÁöÁö¸¸, ÀϹÝÀûÀ¸·Î´Â GET°ú POST ¸í·ÉÀÌ »ç¿ëµË´Ï´Ù.
ÁÖ2) À©µµ¿ìÀÇ command (cmd)¿¡¼ ¡®telnet google.com 80¡¯À» ´©¸£°í À§ÀÇ Request ¸Þ½ÃÁö¸¦ ÀÔ·Â ÈÄ ¿£ÅÍ Å°¸¦ µÎ ¹ø ´©¸£½Ã¸é µ¿ÀÏÇÑ È¸éÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
[1] http://ko.wikipedia.org/wiki/HTML
[2] RFC 1866, HTML 2.0, http://www.rfc-editor.org/rfc/rfc1866.txt
[3] RFC 2616, HTTP 1.1, http://www.w3.org/Protocols/rfc2616/rfc2616.html