잘못된 올블로그 robots.txt 파일
올블로그 개편 전의 robots.txt도 약간 잘못 되어있었지만, 개편 후에도 뭔가 이상하다. 스크린샷을 보면 알겠지만, 처음 3 바이트가 이상한 문자다. 모든 웹 로봇들이 제대로 처리하리라고 보장하긴 힘들 듯 하다. 올블로그 관계자 분이 이 글을 보시면 제발 고쳐주시길.
올블로그 개편 전의 robots.txt도 약간 잘못 되어있었지만, 개편 후에도 뭔가 이상하다. 스크린샷을 보면 알겠지만, 처음 3 바이트가 이상한 문자다. 모든 웹 로봇들이 제대로 처리하리라고 보장하긴 힘들 듯 하다. 올블로그 관계자 분이 이 글을 보시면 제발 고쳐주시길.
노무현 대통령은 “참여정부를 이끌어오면서 참 어려웠던 것은 소통의 문제”라며 “대화가 안되더라도 타협이 안되더라도 말귀는 서로 통해야 되지 않느냐. 말귀가 서로 안통하는 것이 요즘 너무 많다 ”고 말했다.
노 대통령은 지난달 28일 정책기획위원회 위원들과 가진 오찬간담회에서 저는 대화를 말하지만 사람들에게 그것이 잘 받아들여지지 않는 것 같다”면서 이같이 말했다. 이같은 내용은 2일 국정홍보비서관실에서 당시 노대통령의 발언을 정리해 청와대 브리핑에 올린 글을 통해 알려졌다.
노 대통령은 이어 “그만큼 대화와 타협이 어렵다”며 “그러나 그 대신 단결의 한 요소인 희생과 헌신, 그것은 하겠다”고 말했다.
최근 들어, 한국 IT 관련 블로거스피어(blogosphere)에서 소위 어피년 리더 (opinion leader)라고 할 수 있는 사람들마저, IT 업계에 대한 비생산적인 추측을 블로그 글로 쏟아내고 있는 것 같다. 블로그 글은 기존 대중매체 상의 언론에 비해, 정확성 등에서 느슨해질 수 있기 때문에 얻어질 수 있는 이익도 많지만, 그 반대도 확실히 존재한다. 이런 문제의 해결은 어디까지나 블로거 개개인의 규범(indivisual discipline)에 호소할 수 밖에 없다.
덧붙여, PR에는 별로 관심이 없지만, 회사의 입장에서는 회사에 불리하면서도 잘못된 추측이 돌아다니는 것에 대해서 어떻게 대응할까 궁금하다. 아마도 회사 또는 그 회사 PR 부서의 문화에 따라 그 방식이 많이 달라질 것 같다.
2004년 즈음에 The Joel Test를 처음 알게되고 나서부터 daily build의 중요성을 깨닫게되었다. 만들어진 지 무려 6년이 넘은 테스트지만, 여전히 현실은 암울하다. 다음은 현재 일하고 있는 팀의 Joel Test 결과.
—
4 points
그나마 2번과 3번 항목은 비공식적으로 혼자서 작업해놓은 결과다. 그 전엔 2점이었단 얘기.
강문식 군이랑 얘기하다보니, ‘지금 Joel Test를 보니 찌질하다’는 평을 해주었다. 특히 Team Room 환경에서 근무하고 있는 그가 보기에 ‘quiet working condition’은 그렇게 보일 수 밖에. 내가 보기에도 Agile method를 적용하고 있는 환경 하에서는 몇가지 항목들이 상치될 수도 있을 것 같다. 또한 우리 팀처럼 시스템 프로그래밍 계열의 프로덕트를 만들고 있는 경우에는 ‘Usability testing’ 같은 것들은 불필요하거나 중요하지 않을 수도 있다고 생각된다. 게다가, 10점 얻기도 너무나 힘든 현실을 보면, Joel Test 자체가 찌질하다고 얘기하고 싶어지는 점도 있다. 하지만, Joel Test의 항목 하나하나를 살펴보면 여전히 중요하교 유효한 것들이다. 찌질하다고 얘기할 수 있으려면, 기본은 하고나서의 이야기다. 한번이라도, 내가 처음으로 daily build를 만들지 않아도 되는 팀에 가보고 싶다.
2005년 즈음의 ‘책 판매량으로 보는 기술 산업 동향‘이라는 글을 기억하고 있을지 모르겠다. 갑자기 생각나서 검색해보니, Tim O’Reilly가 쓴 2006년의 ‘Programming Language Trends‘라는 글을 찾을 수 있었다.
You’ll find there are many
Who’ll wed for a pennyThe Mikado, No. 13: Finale, Act II
회사에서 쓰던 17인치 LCD가 답답해서 24인치 LCD를 구입했습니다.
구입한 제품은 Richwell의 RW2040DA입니다. Apple 쪽은 비싸서 일찌감치 포기했고, Dell을 사려다가, 디자인은 좀 구려도 약간 더 나은 스펙의 삼성패널을 쓰고 있는 중소 기업 제품을 사기로 했습니다. 24인치 중소 기업 제품들은 모조리 동일한 삼성 패널을 쓰고 있는 것이 재미있었습니다. (들리는 소문에 의하면 삼성은 내년부터 LCD부문 OEM은 줄이고 자체 브랜드를 추진한다죠.) 회사에서 사용하기 때문에 TV 기능은 포기했습니다. 전엔 업체에 직접 문의해서 불량화소 체크를 해달라고 했었는데, 지금은 ‘무결점’이라는 꼬리표가 달려서 4만원 정도 비싼 값으로 팔더군요. 사실 불량화소는 실제 사용에 전혀 문제가 안되지만, 무결점이 아닌바에야 불량화소가 걸릴 확률이 훨씬 높을 거란 판단에, 역시 꺼림찍해서 ‘무결점’ 제품을 샀습니다.
3GATE의 2410WV도 디자인이 그나마 간소해서 구입을 고려하고 있었는데, 비슷한 가격에 pivot 기능이 있고, Xbox이랑 연동이 잘 된다는 철호군의 확인 때문에 Richwell의 제품을 선택했습니다. (3gate의 제품도 잘될런지도 모릅니다만 확인이 안되니까요.)
블랙 색상을 골랐습니다만, 아쉽게도 재고가 없는 관계로 화이트 모델을 골라서 주문했는데, 블랙 모델이 왔군요.무슨 조화인지.
폰트를 크게 해놓고도 넓직한 환경에서 프로그래밍할 수 있어서 매우 만족스럽습니다. 구입한 가격은 약 60만원입니다.
On Encoding URI with Non-ASCII chracters 글에 오류가 있었습니다. Firefox는 현재 (2.0) URI를 UTF-8로 Percent-encoding하지 않습니다. (이 사실은 윤묵형이 지적해주셨습니다.)
Firefox의 about:config 페이지를 보면 URI encoding에 관한 두개의 옵션이 있습니다.
encode-utf8 옵션의 디폴트 값이 false이기 때문에, Firefox는 클라이언트 환경이 정의하는 인코딩으로 Percent-encoding을 수행합니다. 따라서, 한글 윈도우에서는 EUC-KR로 Percent-encoding됩니다. UTF-8 환경의 리눅스에서는 위의 옵션 값이 false라고 하더라도 UTF-8로 Percent-encoding됩니다. 따라서 IE와 firefox는 다릅니다. 아마 기존과의 호환성을 위해서 아직 false인 것 같은데, IE에서는 기본값을 사용하는 상태이므로 Firefox도 true로 가는 것이 타당하다고 생각됩니다.
한편, escape-utf8 옵션의 디폴트 값이 true이므로, Firefox의 주소표시줄에 한글을 적으면 Percent-encoding된 형태로 표시됩니다. 이 옵션의 값을 false로 만들면, 한글 그대로 표시됩니다.
IE나 표준과 호환되면서, 사용자 입장에서는 디코딩된 형태의 URI를 보고 싶다면, Firefox about:config 페이지의 network.standard-url.encode-utf8 옵션은 true로, network.standard-url.escape-utf8 옵션의 값은 false로 만들어주시면 되겠습니다. 테스트는 http://ko.wikipedia.org/wiki/대한민국 로 해보시면 됩니다. 주소표시줄에 “대한민국”이라고 나오면 성공입니다.
아직 안읽어봤지만 이 문제에 대한 다음과 같은 논의들이 있는 것 같군요.
다음번에는 웹서버별로 URI encoding에 대해서 어떻게 처리하고 있는지 알아보도록 하죠.
1994ë ì URI를 ì ìíë RFC1630 ëë URLì ì ìíë RFC1738ì ë³´ë©´ ì ì ìë¯ì´, ì´ê¸°ë¶í° URIë Non-ASCII 문ì를 í¬í¨í ì ìë¤. íì¬ ì°ë¦¬ê° Percent Encodingì´ë¼ê³ ë¶ë¥´ë escaping ë°©ìì ë¨ì§ 공백ì´ë ì ì´ ë¬¸ìë¤ ê·¸ë¦¬ê³ 7bit ë²ì를 ëì´ìë unsafe 문ìë¤ì ííí기 ìí´ ì ì ëì´ììì¼ë, ì´ë¤ 문ì ì¸ì½ë©ì ì¬ì©í´ì¼íëì§ë ì ìëì§ ììì¼ë©°, I18Nì ëí´ì ëª ííê² ì¸ê¸íì§ë ììë¤.
1998ë , IETF Policy on Character Sets and Languages (RFC2277)ìì I18Nì ìí´ ëª¨ë íë¡í ì½ìì 모ë 문ì ë°ì´í°ë 문ìì (charset)ì ëª ìí´ì¼íë©°, UTF-8 문ìì§í©ê³¼ ì¸ì½ë©ì ì¬ì©í ì ìì´ì¼ íë¤ê³ ëª ìë¨ì¼ë¡ì¨ ì¸í°ë· íë¡í ì½ë¤ì ëí 기본ì ì¸ I18N ê°ì´ëë¼ì¸ì´ ë§ë¤ì´ì¡ë¤. ê·¸ë¼ìë ë¶êµ¬íê³ , ì´íì ì ë°ì´í¸ë URI를 ì ìíë 1998ë ì RFC2396ì Escaped Encodingì ê´í´ì ì¢ ë ìì¸íê³ ì ë°íê² ì¤ëª íê³ ìì§ë§ ìì Escaped Encodingì ì ì©í ë ì´ë¤ character encodingì ëí ì¸ê¸ì ììë¤. ë¤íí 1999ë ì W3Cìì ì¶íí HTML 4.01ì Appendixììë Non-ASCII 문ì를 UTF-8ë¡ íííëë¡ ‘ê¶ì¥’íê² ëìë¤. 2001ë ì ìì W3C쪽 ë©¤ë² í ì¬ëì´ 19th IUC(International Unicode Conference)ìì Non-ASCII 문ìì ëí UTF-8ê³¼ Percent Encoding ì¬ì©ì ê³µìííë IRI (Internationalized URI)ì ê´í ë°í를 íê³ , ì´ë IRI specification ìì ì¼ë¡ ì´ì´ì¡ë¤. IRIì ê²°ê³¼ê° RFCë¡ ê²°ì¤ì 맺ì ê²ì 2005ë ì RFC3986ì´ìë¤. ì´ ëììì¼ scheme-specificí 문ì ì¸ì½ë©ì ê´í ì¸ê¸ê³¼ í¨ê» ìë¡ì´ schemeì´ UCSë¡ ë í ì¤í¸ë¥¼ ì ìí ëë UTF-8ê³¼ Percent Encodingì ì¬ì©í´ì¼íë¤ë ì¸ê¸ì´ ë¤ì´ê°ê² ëìë¤. (http schemeì Generic URI를 ì¬ì©íë¯ë¡ UTF-8ë¡ ì¸ì½ë©ëì´ì¼í¨ì ì미íë ê²ì¼ë¡ í´ìíë ê²ì´ ì ì í ê²ì´ë¤.)
íí¸, ì¹íì´ì§ë¤ì ìê° ì¦ê°íê³ , Non-ASCII 문ìë¤ì í¬í¨í URIë¤ì´ íêµì í¬í¨í ë¹ìì´ê¶ì ë§ì ì¹íì´ì§ë¤ì ë¤ì´ê°ë©´ì, ë¸ë¼ì°ì ë ì´ë¤ì ì´ë»ê² ì²ë¦¬í´ì¼í ì§ ê³ ë¯¼í´ì¼ë§ íë¤. ì¼ë°ì ì¼ë¡, ì¹ë¸ë¼ì°ì ë ì¬ì©ìê° íì´ì§ ë´ì URIì í´ë¦íì ë, ê·¸ URLì í´ë¹íë íì´ì§ë¥¼ ë³´ì¬ì£¼ê¸° ìí´ì, URIì ëª ìëì´ìë ìë²ë¡ URIì ë³´ë´ì¼íë¤. ë¸ë¼ì°ì ê° ì´ URIë¤ì ì´ë¤ ííë¡ ìë²ë¡ ë³´ë´ëëì ë°ë¼ ì¸ê°ì§ì ë°©ìì¼ë¡ ëë ì ìë¤.
1ë²ìì ë°©ìì Non-ASCII 문ìê° URIì ë¤ì´ê°ìë ìëë¤ë íì¤ì ì§ì ì ì¼ë¡ ë°°ì¹ë ë¿ë§ ìëë¼,
ì¹ìë²ê° ì¸ì½ë©ì ëí ì§ìì´ ë¹ ì ¸ìë trivialí 구íì¸ ê²½ì° íìì ê²½ì°ê° ë°ìíê² ëë¤. ì´ë¥¼í ë©´ EUC-KR ì¹íì´ì§ìì ëì¨ EUC-KR URI를 ì¹ìë²ìì ê·¸ëë¡ ë겨주ëë¼ë ë¤íí EUC-KR íì¼ ìì¤í ì´ë¼ì ì ëë¡ ì¹íì´ì§ê° ë³´ì¬ì¡ìë¿, íì¼ìì¤í ì ì¸ì½ë©ì UTF-8ë¡ ë³ê²½íë ¤ë©´, ì¹íì´ì§ì ì¸ì½ë©ê¹ì§ ë°ê¿ì¼íë¤.
2ë²ìì ê²½ì°ë 1ë²ìì ê²½ì°ì ë¹ì·íë, 1ë²ìììì íìì ê°ì ê²½ì°ë ë°ìí ì ìë¤. ì ëë¡ êµ¬íë ì¹ìë²ë¼ë©´ URIì í´ìì´ í
¹ì ì¸ì½ë©(Encoding A)ì¼ë¡ ì¤ì ëì´ìê±°ë íì´ì§ì ì¸ì½ë©ì ë°ë¥¸ë¤ê³ íëë¼ë, ìë²ì íì¼ìì¤í
ì´ ì´ë¤ ì¸ì½ë©(Encoding B)ì¸ì§ ì¸ì§í í ì ì íê² ì¸ì½ë©ì ë³í(A->B)í´ì¤ ê²ì´ë¤. íì§ë§, íì¤ì ì¼ë¡ ì¹ìë²ìì ì´ë¬í ëê°ì§ ì¸ì½ë©ì 모ë ëª
ìíë ê²ì ìë¹í ë³µì¡ë를 ì¼ê¸°ìí¨ë¤. ëë¤ë¥¸ 문ì ë, ì´ë° ì¹ìë²ë¡ Non-ASCII 문ì를 í¬í¨í URI를 ìì±í´ì ë³´ë´ì¤ ëë ì¹ìë²ê° ì´ë¤ ì¸ì½ë©ì ì¬ì©íëì§ í´ë¼ì´ì¸í¸ ì¦, ì¹ë¸ë¼ì°ì ë ì¹ì¬ì©ìê° ì¸ì§íê³ ìì´ì¼íë¤ë ê²ì´ë¤. URIê° ì¹íì´ì§ììë§ í´ë¼ì´ì¸í¸ìê² ì£¼ì´ì§ë¤ë©´ ì¹íì´ì§ì ì¸ì½ë©ì ìëì ì¼ë¡ ë°ë¦ì¼ë¡ì ì´ë¬í 문ì 를 í´ê²°í ì ìì¼ë, URIì interoperatibility를 í¬ê² ë¨ì´ë¨ë¦°ë¤. í´ë¼ì´ì¸í¸ê° Non-ASCII 문ìë¡ URI를 ìì±íë ì¼ì´ íë¤ì´ì§ ë¿ë§ ìëë¼, ìë²ì¸¡ì 문ì ì¸ì½ë©ì¼ë¡ ì¸ì½ë©ë URI를 í´ë¼ì´ì¸í¸ 측ìì ëì½ë©í´ì ë³´ì¬ì¤ ìë ìê²ëë¤. (trivialí í´ë¼ì´ì¸í¸ë¼ë©´ ìë²ì¸¡ì ì¸ì½ë©ì 무ìíê³ í´ë¼ì´ì¸í¸ì ì¸ì½ë©ì ì¬ì©í´ì ëì½ë©í¨ì¼ë¡ì¨ ë¶ë¶ì ì¼ë¡ ë³´ì¬ì£¼ë ìë를 í ìë ìì ê²ì´ë¤.)
3ë²ìì ê²½ì°ìë ëëì´ URIë í´ë¼ì´ì¸í¸ì¸¡ì ì¸ì½ë©, ìë²ì¸¡ì ì¸ì½ë©ê³¼ë ë 립ì ì´ê³ , í´ë¼ì´ì¸í¸ì ìë² ëª¨ë ì¶ê°ì ì¸ ì ë³´ìì´ URI를 ì¸ì½ë©íê³ ëì½ë©í ì ìê²ëë¤. ë°ë¼ì, ë¶ê°ì ì¸ ì¤ì ì´ íìíì§ë ìì ë¿ëë¬, URI를 ì¬ì©ììê² ì¹ìí ííë¡ ëì½ë©í´ì ë³´ì¬ì£¼ê¸°ë ì¬ì¸ ê²ì´ë¤. 2ë²ìì ë¹í´ì í¬ê² ì¶ê°ëë ë¹ì©ë ìë¤.
ì¬ê¸°ì íµì¬ì RFC3986ì 2.5ì ìì ì¸ê¸íë¯ì´, URIì ìì±ê³¼ ì ì¡ê³¼ì ììë íë ì´ìì 문ìì¸ì½ë©ì´ ê´ì¬í ì ìë¤ë ê²ì´ë¤. ì´ë¥¼ í´ê²°í기 ìí ê°ì¥ ì§ê´ì ì¸ ë°©ë²ë¤ì ë°ë¡ 문ì ì¸ì½ë©ì ëª ìíê±°ë, íëì íµì¼ë 문ì ì¸ì½ë©ì ì íë ê²ì´ë¤. íì¬ì íì¤ ëª ì¸ì URIì 문ì ì¸ì½ë©ì ëª ìí ì ìë ë©ì»¤ëì¦ì´ ì¡´ì¬íì§ ì기 ë문ì ì¤í ê°ë¥í ê²ì íìì ë°©ìì´ê³ , íëì íµì¼ë 문ì ì¸ì½ë©ì ë°ë¡ UTF-8ì´ ëë ê²ì´ë¤. ê·¸ë¦¬ê³ ê·¸ê²ì´ 3ë²ìì´ ì°ë¦¬ê° ë³´ê³ ìë í´ëµì¸ ì´ì ë¤.
Internet Explorer ìµì
ì ì¸ì¬íê² ë¤ì¬ë¤ë³´ì§ ììëë¼ë, Internet Explorerê° URIë¤ì UTF-8ë¡ ì¸ì½ë©íëë¡ íë ìµì
ì´ ì¡´ì¬íë¤ë ì¬ì¤ì íêµì¸ë¤ìê²ë ì ìë ¤ì ¸ìì ê²ì´ë¤. ìë§ë, ëë¶ë¶ì ì¬ëë¤ì ì´ ìµì
ì êº¼ì¼ íêµì ì¹íì´ì§ë¤ì ì ìì ì¼ë¡ ë¸ë¼ì°ì§í
ì ììë ê²½íì ê°ì§ê³ ìì ê²ì´ë¤. ë¬¼ë¡ , í¹í URIìì Non-ASCII 문ì, ì¦ íê¸ì ì¬ì©íë ê²½ì° ë§ì´ë¤. ì´ì ë ììì ì¤ëª
í 1ë² ë°©ìì´ë 2ë² ë°©ìì í´ë¹íë ì¹ë¸ë¼ì°ì , ì¹ìë²ë¤ì´ ì¹ì ì§ë°°íê³ ìì기 ë문ì´ë¤. ì ì´ë Internet Explorer 5 ë¶í° ì´ ìµì
ì´ ìì§ë§, Non-ASCII 문ì를 í¬í¨íë URIë¤ì ìí´ìë ì´ ìµì
ì ëëë¡ ê¶ì¥íê³ ìë¤.
ë´ ê¸°ìµì¼ë¡ë ì´ ìµì ì´ ì²ì ë±ì¥íì ëë (ìë§ë íê¸íììë§?) 기본ì ì¼ë¡ êº¼ì ¸ììë ê² ê°ë¤. ê·¸ë°ë° ì¸ì ê°ë¶í°ì¸ê° ì´ ìµì ì´ ê¸°ë³¸ì ì¼ë¡ ì¼ì§ë©´ì ë§ì íêµ ì¬ì´í¸ë¤ì 문ì ê° ë°ìíê³ ì´ ë mod_urlì´ ë±ì¥íë¤. mod_urlì UTF-8ë¡ ì¸ì½ë©ëì´ ì¹ìë²ë¡ ë¤ì´ì¤ë URI를 ìíë ì¸ì½ë© (e.g. EUC-KR)ë¡ ë³ííì¬ redirect ìí´ì¼ë¡ì¨ ì¹ ë¸ë¼ì°ì ê° ê°ì ë¡ í¹ì ì¸ì½ë©ì ì¬ì©íëë¡ ë§ëë ì¼ì¢ ì í¸ë¦ì´ìë¤. ì´ë¬í ë°©ìì´ Internet Explorer 6ê¹ì§ë ì ëìíì§ë§, Internet Explorer 7ê° redirectë URIë UTF-8ë¡ ì¸ì½ë©íê² ëë©´ì ì´ í¸ë¦ì ëìíì§ ìê² ëìë¤. ê²°êµ, mod_urlì ì¬ì©í´ 문ì 를 í´ê²°íë ì¹ìë²ë¤ì ë¤ì 문ì ê° ë°ìíê² ëìë¤. (mod_urlì ìì¸í ëì ë°©ìì´ë IE 7ê³¼ ê´ë ¨í 문ì ì ëí´ìë mod_urlê³¼ IE7ì´ë¼ë ê¸ê³¼ ie7 utf-8 bug íê¸ì£¼ì ìì² ë²ê·¸ë¼ë ê¸ì ì°¸ê³ íë¼.) Internet Explorer 7ì ì´ë¬í ë³ê²½ì ‘ë²ê·¸’ë¡ ë¶ë¥´ë ê²ì ì못ë ê²ì´ë¤. Internet Explorer 7ì ì¢ ë íì¤ì í¸íëë ì¡°ì¹ë¥¼ ì·¨íì ë¿ì´ê³ , 기존ì 문ì 를 í¸ë¦ì¼ë¡ í´ê²°í ê³³ë¤ë§ 문ì ê° ë°ìí ê²ì´ë¤.
íì¬ Internet Explorer 7ì 기본ì ì¼ë¡ URI를 UTF-8ë¡ Percent Encodingíë¤. Firefoxë Percent Encodingì íì§ë§, UTF-8ë¡ íë ê²ì´ ìëë¼, ì¤íëë íê²½ì 기본 ì¸ì½ë© (ì를 ë¤ì´, íêµì´ Windowsë¼ë©´ EUC-KR, íëì 리ë ì¤ íê²½ì´ë¼ë©´ UTF-8)ì¼ë¡ Percent Encodingì íë¤. ë°ë©´ì, Percent Encodingì íë ë¶ë¶ììë ë ë¸ë¼ì°ì ë ì°¨ì´ê° ëë¤. Firefoxë URI ì 체를 Percent Encodingíì§ë§, Internet Explorer 7ì ? ì´íì ë¶ë¶ ì¦ query ë¶ë¶ì Percent Encodingíì§ìê³ ê·¸ëë¡ ë³´ë¸ë¤. ê²°êµ, íê¸ì´ queryì í¬í¨ëê³ , ì´ì ëí ì¸ì½ë©ì EUC-KRë¡ ê°ì íê³ ê°ë°í ì¹ì í리ì¼ì´ì ì´ ìë¤ë©´, 리ë ì¤ìì ì¤íë Firefoxììë ì¤ëìí ê±°ë ì기ë¤. ë¬¼ë¡ ë ë¸ë¼ì°ì 모ë ì ì´ì ì ëë¡ ì¸ì½ë© ëì´ìë URLì ê·¸ëë¡ ì²ë¦¬í기 ë문ì, ì´ ë¬¸ì 를 í¼í기 ìí ë°©ë²ì ì ì´ì ë§í¬ë¥¼ Percent Encodingíë ê²ì´ì§ë§, ê·¸ë° ì ëë¡ ì ê²½ì ì´ë¤ë©´ ì ì´ì ì´ë° 문ì ê° ë°ìíì§ë ììì ê²ì´ë¤. ê²°êµ, Internet Explorerì 차기ë²ì , IE8ì´ë IE9 ì¦ììì ì´ ëìë íì¤ í¸íëê² ë³ê²½ëë©´ ê·¸ì ìì¼ ì¬ëë¤ì IE를 ìíë©´ì ì ëë¡ ëì²í ê²ì´ë¤.
ì¬ì´í¸ ë´ì íê¸ì í¬í¨í URIë¤ì UTF-8ë¡ ì¸ì½ë©íë ìì ì íê²ëë©´ ì¬ì©ìë¤ì ê²°êµ ì½ê¸° íë URIë¤ë§ ë³´ê² ëë¤. Internet Explorerì ìííìì¤ìë ëì½ë©ë ííì URI를 ë³´ì¬ì£¼ê¸´ íì§ë§, ì무ë 그곳ì ë³´ì§ ìëë¤. ë§ì½ ì¹ ë¸ë¼ì°ì ë¤ì´ ì¬ëë¤ì´ URI를 ê°ì¥ ì주 ì íë 주ìíìì¤ì ëì½ë©ë ííì URI를 ë³´ì¬ì¤ë¤ë©´, ë¸ë¼ì°ì§ ê²½íì ìë¹í í¥ìë ê²ì´ë¤. http://ko.wikipedia.org/wiki/%EB%8C%80%ED%95%9C%EB%AF%BC%EA%B5%ADë³´ë¤ë http://ko.wikipedia.org/wiki/ëí민êµì´ ì¢ì§ ììê°. ì´ë¯¸ 구ê¸ê³¼ ê°ì ê²ììì§ììë ê²ì 결과를 ë³´ì¬ì¤ ë ëì½ë©ë ííë¡ ë³´ì¬ì£¼ê³ ìë¤. (ê²ì ê²°ê³¼ anchorì URIë ì¸ì½ë©ë íí)
ìì§ I18N-awareíì§ ìë ìì¤í
ë¤ì´ ë§ì§ë§ ê°ë°ìë¼ë©´ ì´ì ë¶í°ë¼ë I18Nê³¼ ì¸ì½ë©ì ëí´ì ì ì´í´íê³ ìì´ì¼íë¤. 문ì ì¸ì½ë©ì ê´í ì´í´ê° ë¶ì¡±í ê°ë°ìë¤ì ë무ë ì주 ë³¼ ì ìë¤. ìëë°©ì´ ë¬¸ì ì¸ì½ë©ì ê´í´ 모른ë¤ë©´ ì´ë»ê² URI ì¸ì½ë©ì ëí´ ì¤ëª
ì íê² ëê°. ê·¸ ì¬ëì ê³¼ì° ìì 문ì ë¤ì í¸ë¦ ì´ì¸ì ê²ì¼ë¡ í´ê²°í ì ì
ìê¹. ê°ë°ìì ìì´ì ìì¸ë¡ ì¸ì´ë ë¼ì´ë¸ë¬ë¦¬ì ì¬ì©ë²ì ì¤ìíì§ ìë¤. ì½ê² ë°°ì¸ ì ì기 ë문ì´ë¤. ì¸ì´ë ë¼ì´ë¸ë¬ë¦¬ ì¡°ì°¨ í¼ì ê³µë¶íì§ ëª»íë¤ë©´ ê°ë°ìë¼ë ì§ì
ì ê·¸ë§ëë¼ê³ íê³ ì¶ë¤. ì ì ì¸ê¸íëëë¡ íë¡ê·¸ë머ìê² ê°ì¥ ì¤ìíê³ , êµì¡ ê³¼ì ììë ê°ì¡°ëë©´ìë ì½ê² ì»ì´ì§ì§ë ìê³ , ë ì¸í°ë·°ììë ì무ë ì ê²½ìì°ë ê²ì ë°ë¡ Abstractionì ê´í ê²ë¤ì´ë¤. 기본ì ì¸ ê°ë
ë¤ì ì´í´íì§ ëª»íê³ , ìë¡ì´ ê°ë
ë¤ì ë§ë¤ì´ë¼ ì ìë¤ë©´, ëìíë ê²ì ì ë§ëë ì¸ì¼í°ë¸ë¥¼ ë§ì´ ë°ë ê°ë°ìë ë ì ìì´ë, ë¤ë¥¸ ê°ë°ìë¤ìê² ì¸ì ë°ë íë¥í ê°ë°ìë ë ì ìë¤. ë¬¼ë¡ ì기ë§ì¡±ì´ ì´ëìì ëì¤ëì§ì ê´í ê°ê°ì¸ì ì íì´ê² ì§ë§.
íí¸, URI ì¸ì½ë©ì ê´í ì¬ë¬ê°ì§ 문ì ë¤ì ë³´ë©´ ì¹ ë¸ë¼ì°ì ì ê°ì ì¤ìí ì í리ì¼ì´ì ì ì ëë¡ ëìíë ê²ë ì¤ìíì§ë§, íì¤ì ì¤ìë ì¤ìíë¤ë ê²ì ëë ì ìë¤. ë¹íì¤ì ì¸ íìì íê°ì§ íì©í ëë§ë¤ ì¼ë§ë ë§ì ì¬ëë¤ì´ í¸íì± ë¬¸ì ë문ì 골머리를 ìê³ ë¹ì©ì ëë¹íìê¹. ì ì´ì ëìíë ë²ì ì ë§ë¤ ì ììë¤ë©´ ì무 문ì ê° ìììí ë° ë§ì´ë¤. ì¤ìí ì í리ì¼ì´ì ì¼ ìë¡ íì¤ ì¤ì ì¬ë¶ë ë©´ë°íê² ê´ì°°ëì´ì¼íê³ ì¤ìëì§ ìë ê²ì ë¹íëì´ì¼ ë§ë íë¤.