문제

간단한 JSF 이미지 브라우징 앱을 만들었고 Firefox에 문제가 있습니다.

앱 자체가 Tomcat 내부에서 실행 중입니다. 사진은 Apache가 제공하는 디렉토리에 저장됩니다. 페이지에 표시되는 9 장의 사진이 있습니다. 서버는 클라이언트와 별개의 컴퓨터에 있습니다. Firefox에 페이지를로드하려고하면 일반적으로 6 개의 사진이 거의 즉시로드됩니다 (<500ms). 다른 3 개는로드하는 데 15 초에서 20 초가 걸립니다. Apache Logs를 보면 Firefox가 15-20 초가 지나갈 때 까지이 세 장의 사진을 요청하지 않는 것 같습니다. 나는 인터넷 익스플로러에서 사이트를 시도했지만 IE는이 문제가 없습니다. 9 장의 사진이 모두 즉시로드됩니다. 몇 가지 다른 기계를 시도했는데 동일한 결과를 얻었습니다. HTML은 매우 빠르게 렌더링됩니다. 200ms <200ms이므로 이것이 JSF 문제라고 생각하지 않습니다 (특히 사진이 Apache에서 제공되기 때문에).

숫자가 항상 동일하지는 않습니다. 때로는 8 개의 이미지를로드하고 때로는 7, 때로는 두 번째 요청의 배치가 모두 한 번에 올 것이고 때로는 하나 이상의 것보다 2를 더로드합니다. 이것이 Firefox 설정 또는 버그인지, 또는 서버 측면이 있으면 내가 할 수있는 일이라면, 나는 그것에 대해 할 수 있다고 생각했지만, 나는 그것을 버리고 누군가가 내가 시도 할 수있는 아이디어가 있는지 확인할 것이라고 생각했습니다.

도움이된다면 여기 Firefox의 Apache 로그 라인이 있습니다.

192.168.1.30 - - [04/Mar/2009:14:25:40 -0500] "GET /work/DSCF0185_thumbnail.jpg HTTP/1.1" 200 7902 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.5.30729)"

그리고 IE에서 하나

192.168.1.30 - - [04/Mar/2009:14:34:14 -0500] "GET /work/DSCF0179_thumbnail.jpg HTTP/1.1" 304 - "http://192.168.1.83:8080/app/browse.jsf" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322; MS-RTC LM 8; Windows-Media-Player/10.00.00.3990; FDM; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)"

편집하다FireBug에서 타이밍을 얻었습니다. 전체 요청이 18 초, 17.9 초 "Recieving Data"이고 나머지는 대기열에서 가져 왔음을 보여줍니다. 나는 17.9 초가 끝날 때까지 Apache 로그에서 실제 요청을 보지 못해서, 특히 IE가 문제를 보여주지 않기 때문에 그것이 Firefox라고 믿게됩니다. 서버에 있다면 두 브라우저 모두에서 문제가있을 것으로 예상됩니다.

Firefox에서 파이프 라인이 꺼져 있습니다.

지적한 바와 같이, IE 로그는 캐시에 닿는 것으로 나타났습니다. 내 실수는 로그 파일의 잘못된 부분을 가져 왔습니다. 깨끗한 로그 라인은 다음과 같습니다. 캐시가 지워진 후에도 IE는 Firefox와 동일한 문제를 나타내지 않습니다.

192.168.1.30 - - [04/Mar/2009:15:52:18 -0500] "GET /vantagework/DSCF0189_thumbnail.jpg HTTP/1.1" 200 5805 "http://192.168.1.83:8080/vantage/browse.jsf" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322; MS-RTC LM 8; Windows-Media-Player/10.00.00.3990; FDM; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)"
도움이 되었습니까?

해결책 3

이것은 내 Apache 구성으로 인해 발생한 것으로 나타났습니다. 일부 튜닝 조정이 이루어졌으며 상자 밖으로 되돌아 가면 Apache 구성이 문제를 해결했습니다.

다른 팁

FireBug의 "NET"콘솔을 사용하여 WebServer가 연결을 수락하는 데 시간이 걸릴 수 있으므로 Firefox인지 웹 서버인지 확인하십시오.

FireBug의 "NET"콘솔은 물건을 요청하기 시작할 때 보여 드리며 이미지 요청 (대기 등)의 여러 부분에 대한 자세한 내용을 제공합니다.

로그 스 니펫에 따르면, 즉 캐시에서 이미지를 검색하고 있으며 Firefox는 서버에서 가져오고 있습니다. 따라서 이미지를 천천히 전달하는 서버 구성에 문제가있는 경우, 캐시를 먼저 지우면 IE에서 유사한 동작 만 표시되므로, 캐시가 아닌 이미지가 실제로 다른 금액을 사용하는지 확인하려고 시도합니다. Firefox와 IE 사이에 다운로드 할 시간입니다.

내가 확인할 또 다른 것은 당신이 가지고 있는지 확인하는 것입니다 파이프 라인 Firefox에서 활성화. 그렇게한다면 비활성화하는 것이 좋습니다. 서버에 문제가 발생할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top