Служба Google PageSpeed пересылает запросы с accept-encoding
заголовок установлен на gzip(gfe)
. К сожалению, IIS подавляется этим следующим:
HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Fri, 11 Apr 2014 02:19:39 GMT
Connection: close
Content-Length: 311
Вот полный запрос:
OPTIONS http://localhost/stream/tags HTTP/1.1
Accept-Encoding: gzip(gfe)
Content-Length: 0
Журнал HTTPERR просто перечисляет 400 Bad Request
без дополнительных полей.
Я экспериментировал с изменением этого значения с помощью модуля перезаписи URL:
<rule name="Accept Encoding Rewrite PageSpeed" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gfe" />
</conditions>
<serverVariables>
<set name="HTTP_ACCEPT_ENCODING" value="gzip" />
</serverVariables>
<action type="None" />
</rule>
Но я боюсь, что правила перезаписи работают после того, что генерирует 400.
А также с AllowWeakHeaderValueSyntax
упомянутый в http://forums.iis.net/p/1176719/1976075.aspx
Любые идеи о том, как переназначить accept-кодировку на gzip
без использования другого устройства?