iemobile을 리디렉션의 URL에서 벗어나지 않도록 만들 수 있습니까?
-
06-07-2019 - |
문제
iEmobile이 내 사이트에 액세스하는 데 문제가 있습니다. 내가 사용하는 특정 리디렉션에는 302 개의 응답 코드가 있으며 헤더 (예, 앱 엔진)가 있습니다.
Server Development/1.0 Python/2.5.2 Date Tue, 04 Nov 2008 16:47:02 GMT Content-Type text/html; charset=utf-8 Cache-Control no-cache Location http://localhost/games/edit-game.html?game=110&frame_to_edit=3#input-top Content-Length 0
이것은 대부분의 브라우저에서 잘 작동합니다. iEmobile (Windows Mobile 6.1을 통해)을 입력하십시오. 이 응답을 받으면 iemobile이 향합니다
http://localhost/games/edit-game.html?game=110&frame_to_edit=3
누락 된 것을 기록하십시오 #input-top
. 어떡해?
해결책
RFC2616을 읽습니다
위치 : Absoluteuri
절대 URI가 정의하는 경우 RFC2396
AbsoluteUri의 정의를 추적하면 # 문자는 URI 정의의 일부가 아니며 4.1 절에 의해 확인됩니다.
4.1. 조각 식별자
URI 참조가 사용되는 경우
식별 된 리소스, 옵션 파편 식별자로 분리되어 있습니다.
Crosshatch ( "#") 문자에 의한 URI는 추가로 구성됩니다.
검색 조치가 성공적으로 완료된 후 사용자 에이전트가 해석 할 참조 정보. 따라서 URI의 일부는 아니지만 종종 URI와 함께 사용됩니다.
요컨대, #fragment는입니다 ~ 아니다 URI의 일부이며 위치의 일부가 아닌 브라우저에 의해 제거되고 있습니다 : 헤더.
다른 팁
Dave는 맞습니다. 인터넷 검색은 같은 문제를 제기합니다.
못생긴 해결 방법 : 해당 브라우저를 지원하려면 리디렉션 대신 메타 새로 고침 태그를 사용하십시오.
할 수있는 일은 거의 없습니다. 브라우저의 버그 인 것 같습니다 (구현자는 분명히 RFC 2616 erratum을 놓쳤다).