2012-12-14 5 views
1

다운로드 할 때 파일 크기를 클라이언트에 표시하고 싶습니다.
하지만 HTTP 헤더 콘텐츠 길이가 작동하지 않습니다.
나의 환경은 다음과 같습니다.HTTP 헤더 내용 길이가 작동하지 않습니다.

  • 아파치 2.2
  • mod_deflate를 다운로드 파일이 레일에

공용 폴더를 프로젝트

  • Rails3.2.

    응답 헤더는 다운로드 할 때의 것입니다.

    수락 - 범위가 바이트
    액세스 제어 - 허용 - 헤드 ... 기원 요청한 X-로, 콘텐츠 유형
    액세스 제어 - 허용 - 마약 ... PUT, GET, POST // * .COM
    연결 연결 유지
    콘텐츠 인코딩 gzip을
    콘텐츠 유형 응용 프로그램/octet-stream을
    날짜 : 옵션
    액세스 제어 - 허용 - 원래 값 ... HTTP, 삭제 금, 14 12 월 2012 05:15:09 GMT Etag입니다 "c1bcc-1c828800-4d0a3ac0f7389는"
    는 연결 유지 시간 제한 = 5, 최대 = 100
    는 마지막으로 수정 2012년 12월 12일, 수요일 그리니치 표준시 08시 34분 51초
    서버 아파치
    전송 - 인코딩
    청크 수락 - 인코딩 변경

    Content-Length를 표시 할 방법이 있습니까?

  • +0

    mod_deflate를 비활성화하면 Content-Length가 표시됩니다. 왜요? – rainbow

    +0

    작은 파일 일 경우 Content-Length가 표시됩니다. 버퍼가 충분하지 않다고 생각합니다. – rainbow

    +0

    문제가 해결되었습니다. 압축되지 않은 파일을 사용하는 것부터 미리 압축 된 파일을 사용하는 것까지 아파치 설정을 변경했습니다. – rainbow

    답변

    1

    오래된 스레드이지만 gzip 압축과 관련된 문제입니다. 당신이 압축을 사용하지 않으려면

    How to disable Apache gzip compression for some media files in .htaccess file?

    당신은 당신의 htaccess로

    SetEnvIfNoCase Request_URI \.(?:gif|png|pdf|xxx)$ no-gzip dont-vary 
    

    에 다음 규칙을 추가 할 수 있습니다 :이 질문을 읽고 다른 사람을 위해 , 여기에이 스레드에 따라 내 솔루션입니다 특정 파일 형식 또는 파일을 다운로드하도록하는 스크립트가있는 경우

    SetEnvIfNoCase Request_URI (url_to_not_compress) no-gzip dont-vary 
    

    관련 문제