2009-10-14 12 views
0

Google 프론트 엔드가 nginx 인 Rails 앱이 있습니다. 사용자는 Windows 네트워크 공유에 저장된 파일을 업로드하고 나중에 검색 할 수 있습니다. 업로드 된 파일은 nginx를 통해 정적으로 제공됩니다.CIFS에서 제공되는 정적 파일 nginx/Ubuntu를 통한 Windows 공유는 브라우저에 완전히 전송되지 않습니다.

예를 들어, 이미지를 다운로드하면 원본 이미지의 일부만 다운로드됩니다. 페이지를 새로 고치면 "206 부분 콘텐츠"응답을 반환하는 서버로 이미지를 조금 더 성공적으로 다운로드합니다.

올바른 파일 크기를 결정할 때 CIFS 연결에서 파일을 제공하는 데 문제가있는 것 같습니다. 우리가 CIFS에 어려움을 겪은 것은 처음이 아닙니다.

마운트의 fstab에 항목은 다음과 같습니다

//aioi-melts1.aioi.local/Staging_Claims /mnt/staging_claims cifs noperm,rw,credentials=/etc/samba/cred-file,uid=root,gid=network,file_mode=0770,dir_mode=0770,umask=0117 0 0 

과 같이 매우 첫 번째 요청 모양의 요청/응답 헤더 것이 :

Response Headers 
Server    nginx/0.5.34 
Date    Wed, 14 Oct 2009 01:34:11 GMT 
Content-Type  image/jpeg 
Content-Length  5274820 
Last-Modified  Wed, 14 Oct 2009 01:30:05 GMT 
Connection   keep-alive 
Accept-Ranges  bytes 

Request Headers 
Host    cx-staging 
User-Agent   Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-GB; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 
Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language  en-gb,en;q=0.5 
Accept-Encoding  gzip,deflate 
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive   300 
Connection   keep-alive 
Cookie    _cx_new_session=29409d54cb14e3d4a9f6aba085e9f447 

문제에 어떤 통찰력이 많은 것 고맙습니다.

감사합니다. Nick.

답변

1

NFS 또는 CIFS (다른 파일 일 수도 있습니다) 마운트에서 제공되는 파일이 nginx "sendfile"옵션과 호환되지 않습니다. sendfile 지원을 끄면 내 문제가 해결되었습니다.