programing

IE10 사용자 에이전트로 인해 ASP.Net이 Set-Cookie를 다시 보내지 않음(IE10이 쿠키를 설정하지 않음)

stoneblock 2023. 7. 8. 10:33

IE10 사용자 에이전트로 인해 ASP.Net이 Set-Cookie를 다시 보내지 않음(IE10이 쿠키를 설정하지 않음)

요약

ASP.Net은 다음을 다시 보내지 않습니다.Set-Cookie머리글을 입력합니다.즉, 예를 들어 양식 인증을 사용할 때 IE10을 사용하여 ASP.Net 사이트에 로그인할 수 없습니다.

세부 사항

현재 IE 10[Preview 2]을(를) 대상으로 레거시 웹 애플리케이션 중 하나를 테스트하고 있습니다.

양식 인증을 사용하여 로그인하려고 하면 다음 메시지가 표시되지 않습니다.Set-Cookie사용자 에이전트가 IE 10의 에이전트인 경우 응답의 헤더.저희가 빈칸으로 해봤습니다.네트 2 그리고 .넷 4 사이트.

믿을 수 없었기 때문에, 우리는 다음 HTTP 요청을 수동으로 실행했습니다.telnet모든 일반적인 도구를 사용한 후 - 동일한 응답을 받았습니다.

GET http://test.ourdomain.co.uk/ HTTP/1.1
Accept: */*
Host: test.ourdomain.co.uk
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
Content-Length: 0

위의 HTTP 요청이 no를 반환합니다.Set-Cookie회답에하지만 User-Agent를 다음과 같이 변경하면Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/6.0)효과가 있습니다!

다른 사람이 이것을 복제할 수 있습니까?비표준 URL 패턴에 영향을 주는 문제 외에 IE10 쿠키에서 알려진 문제를 찾을 수 없습니다.

핫픽스

devio가 원본 답변을 게시한 후 해결 방법과 함께 nullptr은 이에 대한 핫픽스가 있음을 확인했습니다.

http://support.microsoft.com/kb/2600088

나중에 참조할 수 있도록 핫픽스를 메인 질문으로 홍보했지만, 언급된 사용자에게 투표해 주십시오.

이 문제는 IE10이 쿠키가 없는 브라우저(즉, 쿠키를 지원할 수 없음)라고 생각하는 일부 IIS 인스턴스에 있습니다.문제의 경우 서버가 인증 쿠키를 설정하고 브라우저로 다시 전송했지만 이후 요청 시 쿠키를 무시했습니다.

해결책은 IE10이 쿠키를 할 수 있다는 것을 알 수 있도록 브라우저 기능을 패치하거나(이 페이지의 다른 답변에 요약되어 있음) 브라우저가 쿠키를 할 수 없다고 생각하더라도 쿠키를 사용하도록 기본 동작을 변경하는 것입니다.

web.config의 양식 섹션에 다음을 추가했습니다.

쿠키 없는 ="쿠키 사용"

<authentication mode="Forms">
  <forms name=".AUTH" cookieless="UseCookies" loginUrl="/" timeout="10000" path="/" />
</authentication>

MS Connect에서 이 항목이 발견되었습니다. 이 동작은 인식된 버그입니다.

제안된 해결 방법(항목에서):

해결 방법 ==

그 사이에 작동하고 향후 유사한 문제를 방지하기 위해 다음과 같은 파일 ~\App_BrowserS\BrowserFile.browser를 사용합니다.

<browsers>
<browser refID="Default">
<capabilities><!-- To avoid wrong detections of e.g. IE10 -->
<capability name="cookies" value="true" />
<capability name="ecmascriptversion" value="3.0" />
</capabilities>
</browser>
</browsers>

이 문제에 대해 사용 가능한 핫픽스가 있습니다[1].

1)http://support.microsoft.com/kb/2600088
http://support.microsoft.com/kb/2600217 (이전 KB 포함)

또한 [2]는 2012년 1월에 Windows Update가 시작될 것임을 시사합니다.

2) http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

도와주셔서 감사합니다.효과가 없었어요.

  1. 는 사이트에서 파일을 복사했습니다.C:\WINDOWS\microsoft.net\Framework\v2.0.50727\CONFIG\Browsers

  2. Prompt 명령프트C:\WINDOWS\microsoft.net\Framework\v2.0.50727>aspnet_regbrowsers.exe -i

  3. IIS를 다시 시작합니다.

  4. 사이트를 테스트했고 오류 없이 작동합니다.

피드백에 다시 한 번 감사드립니다.

nullptr 응답에 대한 업데이트입니다.

저는 오늘 마이크로소프트 KB2600088을 다운로드하려고 했습니다.이메일로 링크를 받은 후 클릭하면 더 이상 사용할 수 없다는 페이지가 나타납니다.

사용해 보십시오. http://support.microsoft.com/kb/2600217

이 링크는 KB2600088 및 KB2628838을 대체합니다.

마이크로소프트의Net Framework 4.5도 현재 사용할 수 있습니다.

모두가 언급하는 다양한 패치를 설치했지만 어떤 이유로든 문제가 해결되지 않았습니다.

.NET Framework 4.5 Full을 설치하면 문제가 해결됩니다.

대상 4.5로 프로젝트를 업데이트할 필요가 없습니다.서버에 설치하기만 하면 됩니다.

언급URL : https://stackoverflow.com/questions/6983732/ie10-user-agent-causes-asp-net-to-not-send-back-set-cookie-ie10-not-setting-coo