답변:
Farseeker가 수락 한 답변이 작동하지 않습니다. Windows Server 2008 Standard SP 2의 IIS 7.0.6000.16386에서 이것을 테스트했습니다.
동일한 질문에 대한 스택 오버플로에 대한 Jeff Atwood의 의견 을 참조하십시오 .
여러 서버의 콘텐츠를 제공하지 않는 한 전자 태그는 정상입니다. 하나의 서버에서만 서비스를 제공하는 경우 그대로 두십시오. 그들은 아프지 않습니다. YSlow가 이에 대해 불만을 표시하지 않으려면 규칙 세트 선택 요소 근처의 편집 단추 를 클릭 하고 YSlow (V2) 프로파일을 편집하십시오. "엔터티 태그 구성 (Etags)"옵션의 선택을 해제하십시오.
YSlow는 그들이 틀렸다고 불평하지는 않지만 (그것이 말한 것임에도 불구하고) 필요하지 않다고 불평합니다. YSlow를 종료시키는 유일한 방법은 비활성화하는 것입니다.
좋은 점은 오늘 방금이 작업을 직접 수행 한 것입니다.
IIS 관리자를 열고 서버를 클릭 한 후 HTTP 응답 헤더로 이동하십시오. "추가 ..."버튼을 클릭하고 이름 아래에 다음을 입력하십시오.
ETag
(대소 문자 구분). 값 아래에
""
(즉, 두 개의 큰 따옴표)
그리고 ETags가 시작되었습니다!
비슷한 StackOverflow Question을 참조하십시오 .
iis 6에서는 'ETag'= ""에 대한 사용자 지정 헤더를 추가 할 수 있습니다.
iis 7에서 다음과 같이 아웃 바운드 다시 쓰기 규칙을 추가하십시오.
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
IIS 7은 사용자 지정 헤더 및 동일한 문제에 대한 다양한 다른 답변에서 제안 된 다른 모든 솔루션을 덮어 씁니다. 아웃 바운드 규칙은 사용자에게 반환되기 직전에 설정된 모든 항목을 덮어 쓰기 때문에 작동하는 유일한 항목입니다. 이 제안 된 아웃 바운드 규칙 RESPONSE_ETag
은 값에 RESPONSE_ETag
하나 이상의 문자가 있고 값을 빈 문자열로 다시 쓰는 한 이름이 지정된 서버 변수와 일치 합니다.
부분 솔루션 은 IIS7에서 서버 응답 헤더 설정에 대한 답변을 참조하십시오 . 그렇습니다. 완벽한 솔루션은 정말 좋을 것이지만 얻을 수있는 것을 취할 것입니다.
이것을 더 잘 사용하십시오 :
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern="(.*)\:(.*)" />
<action type="Rewrite" value="{R:1}" />
</rule>
</outboundRules>