성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] VT sequences to "CONOUT$" vs. STD_O...
[정성태] NetCoreDbg is a managed code debugg...
[정성태] Evaluating tail call elimination in...
[정성태] What’s new in System.Text.Json in ....
[정성태] What's new in .NET 9: Cryptography ...
[정성태] 아... 제시해 주신 "https://akrzemi1.wordp...
[정성태] 다시 질문을 정리할 필요가 있을 것 같습니다. 제가 본문에...
[이승준] 완전히 잘못 짚었습니다. 댓글 지우고 싶네요. 검색을 해보...
[정성태] 우선 답글 감사합니다. ^^ 그런데, 사실 저 예제는 (g...
[이승준] 수정이 안되어서... byteArray는 BYTE* 타입입니다...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
제니퍼 .NET
닷넷
COM 개체 관련
스크립트
VC++
VS.NET IDE
Windows
Team Foundation Server
디버깅 기술
오류 유형
개발 환경 구성
웹
기타
Linux
Java
DDK
Math
Phone
Graphics
사물인터넷
부모글 보이기/감추기
내용
<div style='display: inline'> <h1 style='font-family: Malgun Gothic, Consolas; font-size: 20pt; color: #006699; text-align: center; font-weight: bold'>Internet Explorer 11을 7, 8, 9, 10 버전으로 인식시키는 방법</h1> <p> 아래와 같은 질문이 있는데요.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > netscape 지원이 되지 않는다는 문구.. ; <a target='tab' href='http://www.sysnet.pe.kr/3/0/1175'>http://www.sysnet.pe.kr/3/0/1175</a> </pre> <br /> <div style='BACKGROUND-COLOR: #ccffcc; padding: 10px 10px 5px 10px; MARGIN: 0px 10px 10px 10px; FONT-FAMILY: Malgun Gothic, Consolas, Verdana; COLOR: #005555'> "Netscape 브라우저는 지원하지 않습니다."<br /> </div><br /> <br /> 이런 오류가 발생하는 것은 인터넷 익스플로러가 더 이상 IE 특화된 User-agent 문자열을 사용하지 않기 때문입니다. 이에 대해서는 다음의 문서에서 잘 설명해 주고 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Compatibility changes in IE11 ; <a target='tab' href='https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/dev-guides/bg182625(v=vs.85)'>https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/dev-guides/bg182625(v=vs.85)</a> </pre> <br /> 즉, IE 11은 다음과 같은 User-agent 문자열을 보내주는 것입니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Windows 8.1: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko Windows 7: Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko </pre> <br /> 사실, 제 개인적으로도 이것때문에 문제를 겪고 있었는데요. 회사에서 사용하는 3Rabbitz라는 온라인 매뉴얼 작성 프로그램이 IE11을 인식하지 못해 로그인하면 다음과 같은 식으로 지원하지 않는 브라우저라는 화면으로 막혀버립니다.<br /> <br /> <img alt='ie11_compat_1.png' src='/SysWebRes/bbs/ie11_compat_1.png' /><br /> <br /> 이런 호환성 문제를 겪는 경우 일반적으로는 다음과 같이 "호환성 보기 설정(Compatibility View settings)" 메뉴를 선택하고,<br /> <br /> <img alt='ie11_compat_2.png' src='/SysWebRes/bbs/ie11_compat_2.png' /><br /> <br /> 원하는 사이트의 주소를 추가해 주면 됩니다.<br /> <br /> <img alt='ie11_compat_3.png' src='/SysWebRes/bbs/ie11_compat_3.png' /><br /> <br /> 그런데, 이렇게 해도 3Rabbitz는 통하지 않습니다. 그 이유는 간단합니다. 3Rabbitz는 애매하게 IE 8 ~ 10 사이의 웹 브라우저만 인식하도록 서버 프로그램이 제작되었기 때문입니다. IE 호환성 보기 설정을 하는 경우 IE 11은 다음과 같은 User-agent를 서버에 보내게 되는데,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > User-Agent: Mozilla/4.0 (compatible; <span style='color: blue; font-weight: bold'>MSIE 7.0</span>; Windows NT 6.3; WOW64; Trident/7.0) </pre> <br /> 보시는 바와 같이 Internet Explorer 7이라고 가장하기 때문에 3Rabbitz의 서비스를 받을 수 없는 것입니다. 따라서, 호환성 보기에 추가하는 것은 이런 경우 별 소용이 없습니다.<br /> <br /> (물론, 문제를 겪고 있는 웹 사이트의 개발자가 IE 11을 인식시켜 주면 이 모든 문제는 해결됩니다.)<br /> <br /> <hr style='width: 50%' /><br /> <br /> 그렇다면 해결 방법은 무엇일까요?<br /> <br /> 역시 간단합니다. IE가 보내는 User-agent의 값을,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko </pre> <br /> 다음과 같이 MSIE 10.0 (또는 MSIE 9.0) 값으로 추가해 주면 됩니다. 어떻게 하냐고요? ^^<br /> <br /> 윈도우 + 'R'키를 눌러 regedit.exe를 실행한 후 다음의 경로로 이동해서,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 64비트 컴퓨터: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent 32비트 컴퓨터: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent </pre> <br /> 아래의 값을 추가해 주면 됩니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 이름: Version Type: REG_SZ Data: MSIE 10.0 </pre> <br /> <img alt='ie11_compat_4.png' src='/SysWebRes/bbs/ie11_compat_4.png' /><br /> <br /> 그런데, 이렇게 바꾸면 부작용이 혹시 있을까요? 크게 걱정할 부분은 아닙니다. 왜냐하면 서버 측에 보내는 User-agent값에 <br /> "MSIE 10.0"만 추가되는 것일 뿐 웹 브라우저 자체의 기능은 IE 11의 최신 모드로 동작하기 때문입니다.<br /> <br /> 참고로, user-agent에 대한 세부값은 다음의 글을 참고하세요. ^^<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Understanding user-agent strings ; <a target='tab' href='https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/ms537503(v=vs.85)'>https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/ms537503(v=vs.85)</a> </pre> <br /> <hr style='width: 50%' /><br /> <br /> 위의 기능을 하는 프로그램을 만들어서 아래에 배포하고 있으니 다운로드 받아서 실행시키실 수 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > UserAgentSelector 직접 실행 ; <a target='tab' href='http://res.sysnet.pe.kr/bin/UserAgentSelector/UserAgentSelector.application'>http://res.sysnet.pe.kr/bin/UserAgentSelector/UserAgentSelector.application</a> </pre> <br /> UserAgentSelector.application 파일이 실행되면 다음과 같이 묻는 창이 나타날 수도 있습니다.<br /> <br /> <img onclick='toggle_img(this)' class='imgView' alt='ie11_compat_5.png' src='/SysWebRes/bbs/ie11_compat_5.png' /><br /> <br /> 그럼, "More Info" 버튼을 누르시고 진행하면 정말로 실행할 거냐에 대해 다시 한번 묻습니다.<br /> <br /> <img onclick='toggle_img(this)' class='imgView' alt='ie11_compat_6.png' src='/SysWebRes/bbs/ie11_compat_6.png' /><br /> <br /> "Run Anyway" 버튼을 누르면 "UserAgent Selector" 프로그램이 실행됩니다.<br /> <br /> <img alt='ie11_compat_7.png' src='/SysWebRes/bbs/ie11_compat_7.png' /><br /> <br /> 컴퓨터에 뭔가 설치되는 것에 노이로제 걸리신 분들은 그냥 ZIP 압축 파일을 다운로드 받아 압축 해제하고 실행하셔도 됩니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > UserAgentSelector.zip ; <a target='tab' href='http://res.sysnet.pe.kr/bin/UserAgentSelector/UserAgentSelector.zip'>http://res.sysnet.pe.kr/bin/UserAgentSelector/UserAgentSelector.zip</a> </pre> <br /> 참고로, 위의 프로그램 소스 코드는 다음의 github에 공개되어 있으니 직접 빌드하셔서 실행하는 것도 가능합니다. (<a target='tab' href='http://www.sysnet.pe.kr/bbs/DownloadAttachment.aspx?fid=797&boardid=331301885'>이 글에도 첨부 파일</a>로 넣어두었습니다.)<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > stjeong / Utilities - UserAgent Selector ; <a target='tab' href='https://github.com/stjeong/Utilities'>https://github.com/stjeong/Utilities</a> </pre> </p><br /> <br /><hr /><span style='color: Maroon'>[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </div>
첨부파일
스팸 방지용 인증 번호
7831
(왼쪽의 숫자를 입력해야 합니다.)