어떻게 구성 IIS 을 처리할이 정말로 대용량 파일 업로드?
-
03-07-2019 - |
문제
플랫폼:IIS6,ASP.Net 2.0(.Net3.5),Server2003.
나는 건물이 허용하는 응용 프로그램에서 파일을 사용자,공정,그 결과를 반환합니다.파일 업로드되는 HTTP 를 사용하여 게시하는 ASP.Net 웹 형태입니다.응용 프로그램 일부를 기대에 큰 파일(의 수백 MB).
내가 사용하여 SWFUpload 수행하는 업로드로 진행 바,하지만에 기여하는 문제 때문에,나는 그것을 우회 표준을 사용하여 HTML 양식을 가리키는 내 업로드 받아들이는 사람 페이지 내가 똑같은 오류가 있습니다.할 때 사용하여 진행 바,업로드 계속 100%,다음은 실패합니다.표준 형태,동작을 나타난 것 같습니다.
나는 데 문제 오른쪽 지금은 파일을 업로드하는 것에 대해 150MB.내가 변했어요 모든 나는 설정을 찾을 수 있습니다,하지만 여전히 행운입니다.
을 요약하면 다음과 같습니다 내가 무엇을 변경되었는 지금까지:
웹.config:추가이 내부 시스템입니다.웹 사이트:
<httpRuntime executionTimeout="3600" maxRequestLength="1536000"/>
에서는 기계입니다.config:내부 시스템입니다.웹사,변경:
<processModel autoConfig="true" />
하기:
<processModel autoConfig="true" responseDeadlockInterval="00:30:00" responseRestartDeadlockInterval="00:30:00" />
고서 MetaBase.xml:변경:
AspMaxRequestEntityAllowed="204800"
하기:
AspMaxRequestEntityAllowed="200000000"
업로드 실패,I get a404 오류가에서 IIS.웹 양식을 시작하지 않는 처리,또는 적어도,그것은 그것을 만들지 않는다면 Page_Load 이벤트입니다.나는 예외가 발생했습니다.의 시작 부분에서는 핸들러,그리고 실행되지 않에서 모두 큰 파일이 있습니다.
모든 것이 잘 작동하는 작은 파일(이 나타나기까지 약 5.5MB).나는지 정확히 무엇인지 파일 크기 제한,그러나 내가 알기에는 나이 제한될 필요가보다 높을 150MB,이것은 가장 큰 파일은 클라이언트가 필요하는 업로드 할 수 있습니다.
사람이 도움이 될 수 있습니다?
해결책
URLSCAN은 모든 웹 사이트에서 활성화되었으며 자체 요청 엔티티 길이 제한이 있습니다. URLSCAN은 개별 웹 사이트에서 실행되지 않고 글로벌 ISAPI 필터이기 때문에 서버에서 실행되고 있음을 알지 못했습니다.
참고 : 글로벌 ISAPI 필터를 찾으려면 IIS 관리자의 웹 사이트 폴더를 마우스 오른쪽 버튼으로 클릭 한 다음 속성을 클릭 한 다음 ISAPI 필터 탭에서 클릭하십시오.
다른 팁
(Googlers의 메모) :
IIS7의 경우 아래에 web.config에 추가합니다 (위에 추가 <system.serviceModel>
):
<system.webServer>
<security>
<requestFiltering><requestLimits maxAllowedContentLength="262144000" /></requestFiltering> <!-- maxAllowedContentLength is in bytes. Defaults to 30,000,000 -->
</security>
</system.webServer>
이 문제를 해결할 때이 KB 기사에 따라 버퍼 크기 한계를 늘려야했습니다.http://support.microsoft.com/kb/944886/en-us
나는 이것이 ASP를 언급한다는 것을 알고 있지만 ASP.net에서도 효과가 있다고 생각합니다.
편집 : 다음은 문제와 관련하여 다른 옵션을 제공하는 링크입니다.
http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx
404 고 누락 Page_Load:IIS 만 처리할 수 있습니다 요청하면 완전한 게시물에 서버에 있습니다.경우에 따라서 게시 실패한(그것의 크기 때문에),할 수 없는 불 페이지의 이벤트입니다.
당신이 볼 수도 있습 NeatUpload http://www.brettle.com/neatupload.에서 수동:"기본적으로,NeatUpload 을 직접하지 않의 크기를 제한 업로드합니다."
당신은 또한 시도 할 수 있습니다 Velodoc XP 에디션 ASP.NET AJAX 확장자를 사용한다는 사실을 포함하여 Neatupload보다 몇 가지 장점이 있습니다. 또한보십시오 Velodoc 웹 사이트 자세한 내용은.
당신은 말합니다 :
그러나 1536000은 단지 1.5MB입니까?