IE6 는 HTTP 프로 토 콜 의 동적 압축 chunked 방식 을 지원 하지 않 습 니 다.
// ;
function isLoginIn(fn, i) {
if(cookie.get("LoginIn") == 1) {
showBannerUserInfo();
} else {
var url = "http://login.baofeng.net/?a=checklogin&info=1&callback=" + fn + "&reqid=" + i;
jsonRequest(url);
}
};
//
function checkLoginIn(j, i) {
if(j.status == 1) {
cookie.put("LoginIn", 1); //1
cookie.put("bf_sid", j.bf_sid); // bf_sid
cookie.put("username", j.userinfo.username);
cookie.put("email", j.userinfo.email);
showBannerUserInfo();
} else {
showBannerUserLogin();
}
};
그러나 온라인 상에 서 이상 한 일이 발생 했 습 니 다. 내부 테스트 서버 가 모두 OK 의 기능 을 가지 고 외부 네트워크 서버 에 넣 으 면 IE6 브 라 우 저 에 문제 가 생 겼 습 니 다.
제거 방법:
외부 네트워크 서버 의 코드 를 모두 내부 네트워크 테스트 서버 로 옮 기 고 기능 이 모두 OK 이 며 온라인 서버 에 올 리 는 것 도 문제 입 니 다.
여러 사람 이 재 료 를 주 우 면 화염 이 높아진다.
아 프 지 않 고 죽지 않 는 다 는 원칙 에 따라 문 제 를 계속 찾 아 보 세 요. 현재 이 스 크 립 트 의 JS 가 완전히 로드 되 지 않 았 고 한 단락 에 불 러 오 면 끊 겼 습 니 다. 문 제 를 발견 하면 한 가닥 생기 가 있 는 것 같 습 니 다. 캡 처 도 구 를 통 해 현재 이 base. js 의 반환 code 는 200 이지 만 Content - Length 의 값 이 없습니다. 왜 서버 가 이 값 을 되 돌려 주지 않 는 지 이상 합 니 다.검색 을 통 해 알 수 있 듯 이 웹 페이지 가 보 여 주 는 성능 을 향상 시 키 기 위해 Nginx 서버 는 Gzip 모듈 을 제공 합 니 다. 이 모듈 은 동적 압축 chunked 방식 으로 웹 페이지 반환 의 효율 을 향상 시 킵 니 다. 서버 의 nginx 설정 은 다음 과 같 습 니 다.
# gzip , gzip ./config
gzip on;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain;
output_buffers 1 32k;
postpone_output 1460;
상기 모듈 의 매개 변수 설명:
http://www.5gme.com/space-6-do-blog-id-57096.html
반복 적 인 테스트 를 통 해 마침내 이 문제 의 진정한 원인 을 발견 했다.
이번 기능 에 추 가 된 로그 인 인증 서버 도 Nginx 를 이용 하여 로그 인 확인 서 비 스 를 대외 적 으로 제공 합 니 다. 이 서비스 역시 같은 gzip 모듈 을 압축 하여 이 서버 의 gzip 모듈 을 로그아웃 시 켰 습 니 다. IE6 에서 로그 인 등록 상 태 를 판정 할 수 없 는 문제 가 해결 되 었 습 니 다.
보통 HTTP 프로 토 콜 에 서 는 Content - Length 라 는 헤드 를 사용 하여 데이터 의 길 이 를 알려 줍 니 다.그 다음 에 데이터 가 하 행 되 는 과정 에서 Content - Length 의 방식 은 서버 에 모든 데 이 터 를 미리 캐 시 한 다음 에 모든 데 이 터 를 다시 한 번 클 라 이언 트 에 게 보 내야 한다.
데 이 터 를 만 들 면서 클 라 이언 트 에 게 보 내 려 면 WEB 서버 는 & quot 를 사용 해 야 합 니 다.Transfer-Encoding: chunked"이런 식 으로 Content - Length 를 대체 합 니 다.
"Transfer - Encoding: chunked" 는 이렇게 인 코딩 됩 니 다.
HTTP
\r
\r
-- \r
HTTP
16
\r
\r
-- , \r
16
\r
XX
\r
………… ( )
0 -- 0 , \r
\r
\r
IE6 는 chunked 방식 의 동적 압축 을 지원 하지 않 기 때문에 IE6 사용자 에 대한 압축 을 포기 하고 Nginx 설정 을 조정 할 수 밖 에 없습니다.
# gzip , gzip ./config
gzip on;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain;
gzip_disable "MSIE [1-6] \.";
output_buffers 1 32k;
postpone_output 1460;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.