2010-07-26 10 views
0

파일을 SQL Server 2008 파일 스트림으로 업로드하는 .NET 3.5 웹 사이트가 있습니다. 이것은 특정 파일 크기가 될 때까지 훌륭하게 작동하며 예기치 않게 브라우저에서 이상한 오류를 반환합니다.파일 업로드 및 이상한 브라우저 오류

IE 7에서 크기가 약 100MB 인 파일을 업로드하면 "Internet Explorer에서 웹 페이지를 표시 할 수 없습니다."라는 오류 메시지와 함께 약 2 분 후 브라우저가 반환됩니다. 완전히 일반적이고 완전히 쓸모없는 오류. 시간 초과 문제 였습니까? 조금 더 설명하면 오류가 발생할 것으로 예상됩니다.

Firefox 3.6.7에서 동일한 파일을 업로드 할 때 브라우저는 약 4 분 후에 "연결이 재설정되었습니다"라는 똑같이 일반적이고 쓸모없는 오류와 함께 반환됩니다. 다시 말하지만, 시간 제한 오류 (예 : 내 코드 어딘가에 연결 시간 초과)가 있었는데 IE가 2 분 후에 반환했기 때문에 파이어 폭스가 일반적인 오류로 2 분이 지나면 다시 돌아올 것으로 예상했습니다.

문제를 진단하고 문제의 원인을 추적 할 수있는 방법에 대한 아이디어가 필요합니다.

또한 파일 업로드 크기가 web.config에서 1 기가로 제한되어 있습니다.

<!-- 1 Gig upload --> 
<httpRuntime maxRequestLength="1048576" /> 

편집 :

이 영향을 미칠 수 있었다 IIS 7의 모든 설정이 있습니까? 저는 IIS 전문가가 아니므로 제 웹 사이트를 잘못 구성했을 수 있습니다.

답변

0

답 :

MSDN requestLimits

은 Web.config의 미세 조정 웹 사이트에 대한 섹션은 IIS 7에서 실행하고있다 나는 IIS 7에 관해서 놀랍게도 무지합니다. 그래서이 문제에 부딪혔다는 것은 놀라운 일이 아닙니다.

<security> 
    <requestFiltering> 
    <!-- 2 gig max upload --> 
    <requestLimits maxAllowedContentLength="2147483648"></requestLimits> 
    </requestFiltering> 
</security> 

maxAllowedContentLength의 기본값은 30000000 바이트입니다. 약간의 수학을 수행하면 30000000 바이트가 29,296.875KB와 같아서 29,174KB로 파일을 업로드 할 수있는 이유는 알 수 있지만 29,308KB로는 업로드 할 수 없습니다.

이 값을 올리 자마자 내 파일 업로드가 더 큰 PDF 파일로 작동했습니다.

+0

Jagd 축하해, 나는 여기에도 무언가를 배웠다. –

0

Jagd,

이 당신의 webconfig을 수정하십시오 :

<system.web> 
    <httpRuntime executionTimeout="999999" maxRequestLength="51200" /> 
+0

고맙습니다. 나는이 두 가지 속성에 익숙하지 않아서 그것들을 들여다보고 다시 돌아올 것이다! – Jagd

+0

어 ... 나는 원래의 게시물에서 말했듯이, 나는 그것을 뒤로하고, 나는 후자에 익숙하다. – Jagd

+0

음, maxRequestLength = 3600을 1 시간으로 설정했지만, 1 분 후에도 404로 다시 돌아옵니다. IE와 Firefox 모두에서이 작업을 수행합니다. – Jagd