Erro 403 ao carregar um arquivo grande usando solicitação ASP nos Serviços de Informações da Internet
Este artigo ajuda você a resolve o problema que ocorre quando você usa uma solicitação do Active Server Pages para carregar um arquivo grande em um computador em que o IIS (Internet Information Services) 8.0 ou versão posterior está instalado.
Versão original do produto: Serviços de Informações da Internet
Número de KB original: 327659
Sintomas
Importante
Este artigo contém informações sobre como editar a metabase. Antes de editar a metabase, verifique se você tem uma cópia de backup que pode restaurar se ocorrer um problema. Para obter informações sobre como fazer isso, consulte o tópico Ajuda de Backup/Restauração de Configuração no MMC (Console de Gerenciamento da Microsoft).
Quando você usa uma solicitação ASP (Active Server Pages) para carregar um arquivo grande em um computador em que o IIS (Serviços de Informações da Internet) 8.0 ou versão posterior está instalado, o upload pode falhar. Você também pode receber uma resposta de erro 403 ou uma mensagem de erro semelhante a uma das seguintes:
Mensagem de erro 1
Erro de objeto de solicitação 'ASP 0104 : 80004005' Operação não permitida
Mensagem de erro 2
007~ASP 0104~Operação não Permitida
Ao postar muitos dados de formulário em uma página ASP, você poderá receber uma mensagem de erro semelhante à seguinte:
Erro '80020009' Exceção ocorreu
Além disso, o upload do arquivo pode falhar quando você usa o Response.binaryWrite
método.
Você experimenta um ou mais desses sintomas, embora o mesmo upload de arquivo tenha funcionado em versões anteriores do IIS.
Motivo
Esse problema ocorrerá se um Content-Length
cabeçalho estiver presente e se o Content-Length
cabeçalho especificar uma quantidade de dados maior que o valor da AspMaxRequestEntityAllowed
propriedade na metabase do IIS. O valor padrão da AspMaxRequestEntityAllowed
propriedade é 204.800 bytes.
Observação
Essa propriedade metabase foi incluída pela primeira vez na atualização cumulativa de outubro de 2002 para IIS. Essa propriedade metabase está incluída em uma instalação padrão do IIS 8.0 ou versões posteriores.
Resolução
Aviso
Se você editar a metabase incorretamente, poderá causar sérios problemas que podem exigir que você reinstale qualquer produto que use a metabase. A Microsoft não pode garantir que problemas resultantes se você editar incorretamente a metabase puder ser resolvido. Edite a metabase por sua conta e risco.
Observação
Sempre faça backup da metabase antes de editá-la.
Para resolve esse problema, modifique o valor na AspMaxRequestEntityAllowed
propriedade para definir o número máximo de bytes permitidos no corpo da entidade de uma solicitação ASP. Para fazer isso, siga estas etapas:
Em um prompt de comando, digite
cd drive :\inetpub\adminscripts
e pressione ENTER.Observação
Neste comando para alterar pastas, a unidade é um espaço reservado para o disco rígido em que o IIS está instalado.
Em um prompt de comando, digite o comando
cscript adsutil.vbs set w3svc/ASPMaxRequestEntityAllowed size
e pressione ENTER.Observação
Neste comando, o tamanho é um espaço reservado para o maior carregamento de tamanho de arquivo que você deseja permitir. O valor máximo é 1.073.741.824 bytes. Defina esse valor como o valor mais baixo possível que permite a funcionalidade desejada.
Em um prompt de comando, digite o comando
iisreset
e pressione ENTER.
Mais informações
A AspMaxRequestEntityAllowed
propriedade especifica o número máximo de bytes permitidos no corpo da entidade de uma solicitação ASP. Se um Content-Length
cabeçalho estiver presente e se o Content-Length
cabeçalho especificar uma quantidade de dados maior que o valor da propriedade, o AspMaxRequestEntityAllowed
IIS retornará uma resposta de erro de 403. A AspMaxRequestEntityAllowed
propriedade se aplica apenas às PUT
solicitações e às POST
solicitações. A AspMaxRequestEntityAllowed
propriedade não se aplica a GET
solicitações. Como essa propriedade metabase se aplica apenas ao ASP, outras extensões de ISAPI (API do Servidor de Internet) não são afetadas.
A AspMaxRequestEntityAllowed
propriedade está relacionada na função à MaxRequestEntityAllowed
propriedade. No entanto, a AspMaxRequestEntityAllowed
propriedade é específica para solicitações ASP. Você pode definir a MaxRequestEntityAllowed
propriedade como 1 megabyte (MB) no nível do Serviço de Publicação Web (SERVIÇO WWW) em todo o mundo. Em seguida, você pode definir a AspMaxRequestEntityAllowed
propriedade como um valor menor se souber que seus aplicativos ASP específicos lidam com uma quantidade menor de dados.