Otimize a configuração do Internet Information Services (IIS) para resolver problemas de carregamento lento e evitar falhas no upload de arquivos. Definir uma política de cache melhora a velocidade de resposta do site, enquanto ajustar o limite máximo de tamanho de requisição para aplicações ASP (AspMaxRequestEntityAllowed) permite o upload de arquivos grandes.
Casos de uso
-
Melhorar o desempenho: defina uma política de cache de longo prazo para recursos estáticos atualizados com pouca frequência, como imagens, CSS e arquivos JavaScript. Isso reduz as requisições ao servidor e acelera o carregamento das páginas.
-
Permitir uploads de arquivos grandes: ajuste o limite de tamanho de requisição para aplicações ASP conforme as necessidades do negócio, como upload de vídeos ou documentos grandes.
Escopo
-
Responsabilidade por produtos de terceiros: a Alibaba Cloud não fornece garantias sobre o desempenho, a confiabilidade ou a operação de produtos de terceiros, como o IIS, mencionados neste documento.
-
Compatibilidade de versão: os passos deste documento são baseados principalmente no IIS 6.0. No IIS 7.0 e versões posteriores, alguns elementos de interface, nomes de serviço (como
Windows Activation Service) e o arquivo de configuração (MetaBase.xml) podem ser diferentes. Adapte os passos ao seu ambiente específico. -
Limite de requisição ASP: a configuração "Maximum Requesting Entity Body Limit" afeta apenas aplicações ASP e não se aplica a outros tipos de aplicações web.
Instalar o serviço IIS para Windows (opcional)
-
Na área de trabalho do servidor, clique em Start > Control Panel.
-
Defina View by como Small icons e clique em Default Programs > Programs And Features.
-
No painel de navegação à esquerda, clique em Turn Windows Features On Or Off.
-
Na caixa de diálogo Windows Features, selecione Internet Information Services.
-
Clique em OK e aguarde a conclusão da instalação.
Configurar a política de cache de conteúdo
Objetivo: configure os cabeçalhos de resposta HTTP para instruir navegadores ou servidores proxy a usar o cache local por um período especificado, sem solicitar novamente ao servidor.
Desabilitar o cache globalmente (para conteúdo dinâmico)
Este método desabilita o cache para todo o conteúdo do site por padrão. Os usuários recebem os dados mais recentes a cada visita, sendo ideal para sites dinâmicos com conteúdo atualizado com frequência.
-
Abra o IIS Manager digitando
inetmgrna caixa de diálogo Run. -
No painel Connections à esquerda, clique com o botão direito no site de destino e selecione Properties.
-
Na caixa de diálogo Properties, clique na aba HTTP Headers.
-
Selecione Enable Content Expiration e depois selecione Expire Immediately.
-
Clique em OK para salvar.
Configurar o cache para diretórios ou arquivos específicos (para recursos estáticos)
Este método define uma duração longa de cache para diretórios que contêm recursos estáticos como imagens, CSS e arquivos JS. Isso melhora significativamente a velocidade de carregamento.
-
No IIS Manager, expanda a árvore de diretórios do site de destino.
-
Clique com o botão direito no diretório ou arquivo específico para o qual deseja configurar o cache, como o diretório
images, e selecione Properties. -
Clique na aba HTTP Headers e selecione Enable Content Expiration.
-
Selecione Expire After e defina uma duração longa de cache, como 30 dias.
-
Clique em OK.
Usar curinga para definir políticas de cache em lote (avançado)
Este método é útil para aplicar uma política de cache uniforme a arquivos do mesmo tipo localizados em diretórios diferentes, como todos os arquivos .jpg.
IIS 6.0: não é recomendável modificar o arquivo MetaBase.xml diretamente para implementar esse recurso. A operação é complexa e de alto risco.
-
IIS 7.0 e versões posteriores (Recomendado): use o arquivo
web.configpara a configuração. Os elementos<location>e<staticContent>permitem definir uma política de cache para tipos de arquivo específicos, oferecendo um método mais seguro e flexível.
Ajustar o limite máximo de corpo de requisição ASP
Objetivo: essa configuração limita a quantidade máxima de dados que um cliente pode enviar a uma página ASP pelo método POST. O valor padrão de aproximadamente 200 KB pode causar falhas no upload de arquivos grandes.
Configurar pela interface do IIS Manager (recomendado)
-
No IIS Manager, selecione o site de destino.
-
Em Features View, clique duas vezes no ícone do recurso ASP.
-
Na página de configuração ASP, expanda Limits Properties.
-
Modifique o valor de Maximum Requesting Entity Body Limit (em bytes).
-
Valor padrão:
200,000(aproximadamente 200 KB) -
Exemplo: para permitir uploads de 50 MB, defina o valor como
52,428,800.
-
-
No painel Actions à direita, clique em Apply para salvar as alterações.
Modificar o arquivo de configuração diretamente
-
Interrompa o IIS Admin Service.
-
Faça backup do arquivo
C:\Windows\System32\inetsrv\MetaBase.xmle abra-o com um editor de texto. -
No arquivo, pesquise o parâmetro
AspMaxRequestEntityAllowede modifique seu valor.-
Valor padrão:
204800(200 KB) -
Exemplo: para permitir uploads de 500 MB, defina o valor como
524,288,000.
-
-
Salve e feche o arquivo
MetaBase.xml.
Reiniciar o serviço para aplicar a configuração
Após alterar a configuração, reinicie o serviço IIS correspondente para que as alterações entrem em vigor.
-
IIS 6.0: no gerenciador de Services, reinicie o IIS Admin Service.
-
IIS 7.0/8.0: no gerenciador de Services, reinicie o Windows Activation Service.
Verificar a política de cache
-
Abra o painel Network nas ferramentas de desenvolvedor do navegador (atalho: F12).
-
Acesse o site e selecione um recurso para o qual você configurou o cache, como uma imagem.
-
Na seção Headers, verifique os Response Headers.
-
Configuração bem-sucedida: os cabeçalhos de resposta devem conter um campo
Cache-Control: max-age=[seconds]ouExpires: [future date]. -
Expiração imediata: os cabeçalhos de resposta devem conter
Cache-Control: no-cacheou um campoExpirescom uma data no passado.
-
Perguntas frequentes
Por que as alterações na configuração não estão sendo aplicadas?
Esse problema geralmente ocorre por um dos motivos a seguir. Verifique-os na ordem indicada:
-
Serviço incorreto reiniciado: as alterações não serão aplicadas até que o serviço correto seja reiniciado.
-
Para o IIS 6.0: reinicie o
IIS Admin Service. -
Para o IIS 7.0/8.0: reinicie o
Windows Activation Service.
-
-
Substituição de configuração: uma configuração mais específica está substituindo suas definições globais. Por exemplo, uma política de cache definida em um diretório específico sempre terá precedência sobre a política do site inteiro.
-
Cache do navegador durante a verificação: seu navegador pode estar exibindo uma resposta obsoleta do cache local. Para obter uma resposta direta do servidor, limpe o cache do navegador ou ative a opção "Disable cache" nas ferramentas de desenvolvedor durante o teste.
Por que os uploads de arquivos ainda falham após ajustar o limite de tamanho de requisição?
Isso geralmente acontece porque a aplicação web tem seu próprio limite de tamanho de upload, separado da configuração no nível do servidor IIS. A configuração AspMaxRequestEntityAllowed no IIS controla apenas o tamanho máximo do corpo de requisição aceito pelo servidor web. A aplicação executada no servidor (por exemplo, uma aplicação ASP.NET) frequentemente impõe seu próprio limite, mais baixo. Por exemplo, o arquivo web.config de uma aplicação ASP.NET pode conter uma configuração <httpRuntime> que também precisa ser modificada.