yslow diz que os etags estão mal configurados. como configurar etags corretamente no IIS7?

19

executando o ySlow em um site que eu suporte, notei que os etags estão mal configurados para as imagens do site (por exemplo, * .jpg, * .png, * .gif). Alguém pode ajudar a explicar o que tenho que fazer para obter o IIS7 emitindo esses etags corretamente?

    
por MikeJ 19.08.2009 / 05:58

7 respostas

6

A resposta aceita por Farseeker não funciona. Eu testei isso no IIS 7.0.6000.16386 no Windows Server 2008 Standard SP 2.

Veja o comentário de Jeff Atwood no Stack Overflow para a mesma pergunta .

    
por 17.09.2010 / 18:01
11

Etags estão OK, desde que você não veicule conteúdo de vários servidores. Se você servir apenas de um servidor, deixe-os lá. Eles não doem. E se você não quiser que o YSlow reclame sobre eles, clique no botão Editar próximo ao elemento de seleção Conjuntos de regras e edite o perfil do YSlow (V2). Basta desmarcar a opção "Configurar tags de entidade (Etags)".

    
por 25.08.2009 / 09:44
10

YSlow não está reclamando que eles estão errados (mesmo que seja o que diz), mas está reclamando que eles não são necessários. A única maneira de fazer com que o YSlow cale-se sobre isso é desativá-los.

O bom é que eu mesmo fiz isso hoje cedo!

Abra o gerenciador do IIS, clique no servidor e acesse Cabeçalhos de resposta HTTP. Clique no botão "Adicionar ..." e, sob o nome, digite:

ETag

(diferencia maiúsculas de minúsculas). Em Valor, insira

""

(são duas aspas duplas)

E ETags begone!

    
por 19.08.2009 / 06:03
2

Veja uma pergunta StackOverflow semelhante

    
por 19.08.2009 / 06:39
2

No iis 6, você pode adicionar um cabeçalho personalizado para 'ETag'=""

No iis 7, adicione uma regra de reconfiguração de saída da seguinte forma:

<outboundRules>
  <rule name="Remove ETag">
    <match serverVariable="RESPONSE_ETag" pattern=".+" />
    <action type="Rewrite" value="" />
  </rule>
</outboundRules>

O IIS 7 sobrescreverá cabeçalhos personalizados e todas as outras soluções propostas em várias outras respostas referentes ao mesmo problema. As regras de saída são o único item que parece funcionar, pois sobrescreve qualquer coisa que esteja definida antes de ser retornada ao usuário. Esta regra de saída proposta corresponde a qualquer variável de servidor chamada RESPONSE_ETag , desde que o valor de RESPONSE_ETag tenha um ou mais caracteres e reconfigura o valor como uma string vazia.

    
por 02.08.2013 / 21:59
1

Consulte a resposta para Definir cabeçalho de resposta do servidor no IIS7 para uma solução parcial. Sim, uma solução completa seria muito boa, mas vou pegar o que puder.

    
por 02.03.2012 / 19:41
0

Melhor usar isso:

<outboundRules>
  <rule name="Remove ETag">
    <match serverVariable="RESPONSE_ETag" pattern="(.*)\:(.*)" />
    <action type="Rewrite" value="{R:1}" />
  </rule>
</outboundRules>
    
por 08.11.2013 / 08:32