Risposte:
La risposta accettata da Farseeker non funziona. Ho provato questo in IIS 7.0.6000.16386 su Windows Server 2008 Standard SP 2.
Vedi il commento di Jeff Atwood su Stack Overflow per la stessa domanda .
Gli Etag sono OK fintanto che non si offrono contenuti da più server. Se servi solo da un server, lasciali lì. Non fanno male. E se non vuoi che YSlow si lamenti di loro, fai clic sul pulsante Modifica accanto all'elemento di selezione Set di regole e modifica il profilo YSlow (V2). Deseleziona l'opzione "Configura tag entità (Etags)".
YSlow non si lamenta del fatto che siano sbagliati (anche se è quello che dice), ma si lamenta che non sono necessari. L'unico modo per convincere YSlow a tacere a riguardo è disabilitarli.
Il bello è che l'ho fatto da solo oggi prima!
Apri il tuo gestore IIS, fai clic sul server e vai a Intestazioni di risposta HTTP. Fai clic sul pulsante "Aggiungi ..." e, sotto il nome, inserisci:
ETag
(che tiene conto del maiuscolo o minuscolo). In Valore, immettere
""
(ecco due doppie virgolette)
E ETags ha iniziato!
Vedi una domanda StackOverflow simile .
In iOS 6, puoi aggiungere un'intestazione personalizzata per 'ETag' = ""
In iOS 7, aggiungi una regola di riscrittura in uscita come segue:
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
IIS 7 sovrascriverà le intestazioni personalizzate e tutte le altre soluzioni proposte in varie altre risposte relative allo stesso problema. Le regole in uscita sono l'unico elemento che sembra funzionare poiché sovrascrive tutto ciò che è impostato appena prima che venga restituito all'utente. Questa proposta di regola in uscita corrisponde a qualsiasi variabile del server denominata RESPONSE_ETag
purché il valore di RESPONSE_ETag
abbia uno o più caratteri e riscriva il valore in una stringa vuota.
Per una soluzione parziale, vedere la risposta a Imposta intestazione risposta server in IIS7 . Sì, una soluzione completa sarebbe davvero bella, ma prenderò quello che posso ottenere.
Meglio usare questo:
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern="(.*)\:(.*)" />
<action type="Rewrite" value="{R:1}" />
</rule>
</outboundRules>