2009-06-03 9 views
0

Firefox를 피들러에 연결하고 다음 오류가 발생했습니다. 이 오류의 원인은 무엇입니까? 주의 할HTTP로 응답이 시작되지 않음

alt text

재미있는 점은 HTTP 헤더

alt text

그래서 피들러는 응답이 HTTP로 시작하지 않기 때문에 프로토콜 위반이 있음을 말한다 페이지에 렌더링지고 있다는 점이다. 그러나 HTTP 응답은 페이지에 렌더링됩니다.

답변

1

HTTP 헤더 정보가 표시되기 전에 일부 페이지 콘텐츠, 특히 빈 행이있는 페이지 콘텐츠가 표시 될 수 있습니다. 이 경우 브라우저는 HTTP 헤더 섹션의 끝이라고 생각하여 해당 문자를 내용으로 렌더링합니다.

는 서버가 제대로 일을 전송하지

+0

FF로 원본을 검사하고 사용자가 올바른지 확인할 수 없습니다. FF 소스보기 작업도이 페이지의 소스를 가져 오는 중 멈춘 것처럼 보입니다. –

+1

Fiddler를 사용하면 모든 트래픽을 볼 수 있습니다. –

+0

감사합니다. 바이올린에 붙인 예는 효과가있었습니다. 나는 정보가 더있다. 나는 원래의 질문에 피들러 (fiddler) 메시지와 함께 나의 발견을 업데이트했다. –

0

(첨부 파일의 링크가 너무 거기에 어떤 정보를 볼 수없는 지금 고장). 유효한 HTTP 응답은 HTTP 헤더이며 빈 줄과 내용이 이어집니다. 이 경우, 이것이 따르지 않았을 가능성이 있습니다. HTTP 헤더 앞에 빈 행이 있으면 HTTP 헤더는 내용처럼 취급되어 그에 따라 렌더링됩니다.

1

telnet을 사용하면 서버가 무엇을 반환하는지 정확하게 볼 수 있습니다. 당신이 포트 800에 서버를 실행하는 경우,이 시도 :

$ telnet hostname 800 
GET/HTTP/1.0 

(당신은 두 번 GET의 줄 끝에서 Enter 키를 칠 필요가 당신이 필요한 경우는 그 시점에서 헤더를 추가 할 수 있습니다..)

선행 빈 줄이 문제라고 가정하면

(blank line) 
HTTP/1.1 200 OK 
Various-headers: here 
관련 문제