인터넷 정보 서비스에서 ASP 요청을 사용하여 큰 파일을 업로드하는 경우 오류 403

이 문서에서는 활성 서버 페이지 요청을 사용하여 IIS(인터넷 정보 서비스) 8.0 이상 버전이 설치된 컴퓨터에 큰 파일을 업로드할 때 발생하는 문제를 resolve 수 있습니다.

원본 제품 버전: 인터넷 정보 서비스
원본 KB 번호: 327659

증상

중요

이 문서에는 메타베이스 편집에 대한 정보가 포함되어 있습니다. 메타베이스를 편집하기 전에 문제가 발생할 경우 복원할 수 있는 백업 복사본이 있는지 확인합니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 MMC(Microsoft Management Console)의 구성 백업/복원 도움말 항목을 참조하세요.

ASP(Active Server Pages) 요청을 사용하여 IIS(인터넷 정보 서비스) 8.0 이상 버전이 설치된 컴퓨터에 큰 파일을 업로드하는 경우 업로드가 실패할 수 있습니다. 오류 403 응답 또는 다음 중 하나와 유사한 오류 메시지가 표시될 수도 있습니다.

  • 오류 메시지 1

    요청 개체 오류 'ASP 0104 : 80004005' 작업이 허용되지 않음

  • 오류 메시지 2

    007~ASP 0104~작업이 허용되지 않음

  • 많은 양식 데이터를 ASP 페이지에 게시하면 다음과 유사한 오류 메시지가 표시될 수 있습니다.

    오류 '80020009' 예외가 발생했습니다.

또한 메서드를 사용할 때 파일 업로드가 Response.binaryWrite 실패할 수 있습니다.

이전 버전의 IIS에서 동일한 파일 업로드가 작동하더라도 이러한 증상이 하나 이상 발생합니다.

원인

이 문제는 헤더가 Content-Length 있고 헤더가 Content-Length IIS 메타베이스의 속성 값 AspMaxRequestEntityAllowed 보다 큰 데이터 양을 지정하는 경우에 발생합니다. 속성의 AspMaxRequestEntityAllowed 기본값은 204,800 바이트입니다.

참고

이 메타베이스 속성은 IIS에 대한 2002년 10월 누적 업데이트에 처음 포함되었습니다. 이 메타베이스 속성은 IIS 8.0 이상 버전의 기본 설치에 포함되어 있습니다.

해결 방법

경고

메타베이스를 잘못 편집하는 경우 메타베이스를 사용하는 제품을 다시 설치해야 할 수 있는 심각한 문제가 발생할 수 있습니다. 메타베이스를 잘못 편집하는 경우 발생하는 문제를 해결할 수 있다고 Microsoft는 보장할 수 없습니다. 사용자 고유의 위험으로 메타베이스를 편집합니다.

참고

메타베이스를 편집하기 전에 항상 백업합니다.

이 문제를 resolve 하려면 속성의 AspMaxRequestEntityAllowed 값을 수정하여 ASP 요청의 엔터티 본문에 허용되는 최대 바이트 수를 설정합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 명령 프롬프트에서 를 입력 cd drive :\inetpub\adminscripts한 다음 Enter 키를 누릅니다.

    참고

    폴더를 변경하는 이 명령에서 드라이브 는 IIS가 설치된 하드 디스크의 자리 표시자입니다.

  2. 명령 프롬프트에서 명령을 cscript adsutil.vbs set w3svc/ASPMaxRequestEntityAllowed size입력한 다음 Enter 키를 누릅니다.

    참고

    이 명령에서 size 는 허용하려는 가장 큰 파일 크기 업로드의 자리 표시자입니다. 최대값은 1,073,741,824 바이트입니다. 이 값을 원하는 기능을 허용하는 가능한 가장 낮은 값으로 설정합니다.

  3. 명령 프롬프트에서 명령을 iisreset입력한 다음 Enter 키를 누릅니다.

추가 정보

속성은 AspMaxRequestEntityAllowed ASP 요청의 엔터티 본문에 허용되는 최대 바이트 수를 지정합니다. 헤더가 Content-Length 있고 헤더가 Content-Length 속성 값 AspMaxRequestEntityAllowed 보다 큰 데이터 양을 지정하는 경우 IIS는 403 오류 응답을 반환합니다. 속성은 AspMaxRequestEntityAllowed 요청 및 POST 요청에만 PUT 적용됩니다. 속성은 AspMaxRequestEntityAllowed 요청에 적용되지 GET 않습니다. 이 메타베이스 속성은 ASP에만 적용되므로 다른 ISAPI(인터넷 서버 API) 확장은 영향을 받지 않습니다.

속성은 AspMaxRequestEntityAllowed 함수에서 속성과 관련이 있습니다 MaxRequestEntityAllowed . 그러나 속성은 AspMaxRequestEntityAllowed ASP 요청과 관련이 있습니다. WWW 서비스(World Wide Web Publishing Service) 수준에서 속성을 1MB(메가바이트)로 설정할 MaxRequestEntityAllowed 수 있습니다. 그런 다음 특정 ASP 애플리케이션이 AspMaxRequestEntityAllowed 더 적은 양의 데이터를 처리한다는 것을 알고 있는 경우 속성을 더 작은 값으로 설정할 수 있습니다.