작업 중 문제 해결 - (win 2003 asp. net) Session 과 페이지 전송 방법 으로 해결 방안 을 정상적으로 사용 할 수 없습니다.
9833 단어 asp.net
원인 을 분석 해 보 겠 습 니 다. http://hr.bingjun.cc/
로그 인 후 사이트 주소 표시 http://hr.bingjun.cc/(F(0-MEj-fnv8v-hWRGI2rOhfQ_0SZjQAnMEBs5P1DKcEhwdX-TTu8TAZ_H6HVGorBM-TaTm4zK_DCSdO8gvqOXWCoou4YJIVziHJ1PC9hke7w1))/Default.aspx
모든 웹 페이지 의 임의의 링크 를 클릭 하 십시오.
키 레 퍼 러 http://hr.bingjun.cc/MyTask/MyTaskPage.aspx
302 만 http://hr.bingjun.cc/
인터넷 주소http://hr.bingjun.cc/(F(0-MEj-fnv8v-hWRGI2rOhfQ_0SZjQAnMEBs5P1DKcEhwdX-TTu8TAZ_H6HVGorBM-TaTm4zK_DCSdO8gvqOXWCoou4YJIVziHJ1PC9hke7w1))/Default.aspx
분석 해 보면 쉽게 발견 할 수 있 습 니 다. 이것 은 쿠키 없 는 모드 를 사용 하 는 사이트 링크 입 니 다. 또한 F 는 처음에 우리 의 BP & IT 프로젝트 팀 이 Forms 폼 검증 을 사용 했다 고 판단 할 수 있 습 니 다.
페이지 를 뛰 어 넘 는 것 은http://hr.bingjun.cc/MyTask/MyTaskPage.aspx쿠키 URL 이 없 는 페이지 가 없 으 면 쿠키 를 잃 어 버 리 고 쿠키 에 의존 하 는 세 션 과 로그 인 상 태 는 더욱 다 릅 니 다.
왜 페이지 가 넘 어 갔 는데 Cookie URL 을 안 가 져 왔어요? 코드 가 서버 경 로 를 사용 하지 않 아서 그런 것 같 아 요. "~ /" 서버 경 로 를 사용 해 야 ASP. NET 이 자동 으로 도와 주 는 것 같 아 요. CookieUrl 세그먼트 가 져 왔어요.
발견 즉시 BP & IT 프로젝트 팀 에 왜 제 IE 11 은 내부 사 이 트 를 사용 할 수 없 는 지 물 어보 세 요.
그 렇 군요. 제 가 알 고 있 는 지식 으로 이 문 제 를 일 으 킬 수 있 는 버그 는 ASP. NET 에서 IE 11 을 쿠키 없 는 브 라 우 저 로 인식 한 것 같 습 니 다.
그러면 해결 방법 이 굉장히 많아 요. 일단 서버 레벨 부터.
ASP. NET 식별 브 라 우 저가 쿠키 가 없 는 지 아 닌 지 는 알 고 있 습 니 다.
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Browsers
이 디 렉 터 리 를 열 면 아래 에 많은 파일 이 있 습 니 다. 이것 이 바로 ASP. NET 브 라 우 저 를 식별 하 는 라 이브 러 리 입 니 다. ie. browser 를 열 었 습 니 다.
하나 추가 브 라 우 저 설정 노드
<browser id="IE11" parentID="Mozilla">
<identification>
<userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
<userAgent nonMatch="IEMobile" />
</identification>
<capture>
<userAgent match="Trident/(?'layoutVersion'\d+)" />
</capture>
<capabilities>
<capability name="browser" value="IE" />
<capability name="layoutEngine" value="Trident" />
<capability name="layoutEngineVersion" value="${layoutVersion}" />
<capability name="extra" value="${extra}" />
<capability name="isColor" value="true" />
<capability name="letters" value="${letters}" />
<capability name="majorversion" value="${major}" />
<capability name="minorversion" value="${minor}" />
<capability name="screenBitDepth" value="8" />
<capability name="type" value="IE${major}" />
<capability name="version" value="${version}" />
</capabilities>
</browser>
이렇게 하면 이 서버 의 v 4.0.30319 버 전의 모든 사이트 에서 이 문 제 는 해 결 된 셈 이다.
2 BP & IT 는 서버 에서 프로필 을 바 꾸 는 해결 방법 을 찾 았 다 고 했 어 요. 서버 에 사이트 가 너무 많아 서 무 너 질 까 봐.
ASP. NET Config 프로필 사이트 의 모든 것 을 추가 하거나 덮어 쓸 수 있 는 것 을 모 르 십 니까?(PS: 위 에 있 는 그 경로 의 Config 아래 는 모두 전역 설정 입 니 다)
덮어 쓸 수 있 으 니까 프로젝트 에 브 라 우 저 파일 을 새로 만 들 면 되 잖 아 요. 브 라 우 저 파일 을 새로 만 드 는 방법 에 대해 서 는 제 가 말 하지 않 아 도 되 겠 죠?
3. 이것 도 귀 찮 거나 나중에 비슷 한 인식 되 지 않 는 브 라 우 저 가 생 길 까 봐 cookieless 값 을 수정 하 세 요.
웹. config 를 열 어 System. web 의 노드 를 추가 하거나 수정 합 니 다.
<sessionState mode="InProc" cookieless="UseUri" customProvider="DefaultSessionProvider">
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
<authentication mode="Forms">
<forms cookieless="UseUri" loginUrl="~/Account/Login" timeout="2880" defaultUrl="~/" />
</authentication>
배치 하 다. cookieless = "UseCookies" 이것 도 모든 브 라 우 저 는 브 라 우 저가 쿠키 를 지원 하 든 지원 하지 않 든 URLCookie 가 아 닌 브 라 우 저 쿠키 를 사용 합 니 다.
여기까지 오 면 나 도 별로 차이 가 없 을 것 같다.
PS: IE 11 출현 -doPost Back 정의 되 지 않 은 것 도 브 라 우 저가 인식 하지 못 하 는 문제 입 니 다. 하지만 브 라 우 저가 쿠키 를 인식 하지 못 한다 고 생각 하 는 것 이 아니 라 자 바스 크 립 트 를 지원 하지 않 는 다 고 생각 합 니 다.
<capability name="javascript" value="true" />
<capability name="cookies" value="true" />
(PS: 자 바스 크 립 트 를 지원 하지 않 는 브 라 우 저 를 본 적 이 있 습 니까? 저 는 본 적 이 없습니다. 이 마이크로소프트 는... 모 르 겠 습 니 다! 기본적으로 청 두 가 얼마나 지원 하 는 지 지원 하지 않 고 프로필 을 쓰 는 것 이 좋 지 않 습 니까?)
기술 교류 군
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
작업 중 문제 해결 - (win 2003 asp. net) Session 과 페이지 전송 방법 으로 해결 방안 을 정상적으로 사용 할 수 없습니다.또한 F 는 처음에 우리 의 BP & IT 프로젝트 팀 이 Forms 폼 검증 을 사용 했다 고 판단 할 수 있 습 니 다. 페이지 를 뛰 어 넘 는 것 은http://hr.bingjun.cc/MyTask/MyTas...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.