Donc, je suis un peu un IIS7 n00b mais j'ai utilisé la plupart des anciens systèmes IIS depuis 3. J'essaie d'activer la compression dynamique et cela fonctionne, surtout. Cela ne fonctionne pas pour mes demandes ADO.Net Data Service (Astoria), groupées ou non.
J'ai trouvé le suivi de la demande ayant échoué (FREB) qui était vraiment utile. Et ce que je vois sur les demandes non groupées est Reason Code 12, NO_MATCHING_CONTENT_TYPE
. OK, donc je n'ai pas spécifié le type MIME correspondant, c'est facile.
Sauf que c'est ce que j'ai dans mon web.config (qui je pense est correct, mais peut-être pas).
<httpCompression dynamicCompressionDisableCpuUsage="100"
dynamicCompressionEnableCpuUsage="100"
noCompressionForHttp10="false"
noCompressionForProxies="false"
noCompressionForRange="false"
sendCacheHeaders="true"
staticCompressionDisableCpuUsage="100"
staticCompressionEnableCpuUsage="100">
<dynamicTypes>
<clear/>
<add mimeType="*/*"
enabled="true" />
</dynamicTypes>
<staticTypes>
<clear/>
<add mimeType="*/*"
enabled="true" />
</staticTypes>
</httpCompression>
<urlCompression doDynamicCompression="true"
doStaticCompression="true"
dynamicCompressionBeforeCache="false" />
Maintenant, je pense que cela signifie qu'il devrait compresser toute demande qui inclut l'en-tête Accept: Gzip. J'adorerais savoir ce que les autres pourraient penser ici.
Ma trace de violoneux:
GET /SecurityDataService.svc/GetCurrentAccount HTTP/1.1
Accept-Charset: UTF-8
Accept-Language: en-us
dataserviceversion: 1.0;Silverlight
Accept: application/atom+xml,application/xml
maxdataserviceversion: 1.0;Silverlight
Referer: http://sdev03/apptestpage.aspx
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.5.21022; .NET CLR 3.5.30729; InfoPath.2; .NET CLR 3.0.30729; OfficeLiveConnector.1.4; OfficeLivePatch.1.3)
Host: sdev03
Connection: Keep-Alive
Cookie: .ASPXAUTH=<snip>
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: application/atom+xml;charset=utf-8
Server: Microsoft-IIS/7.0
DataServiceVersion: 1.0;
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Mon, 22 Mar 2010 22:29:06 GMT
Content-Length: 2726
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
*** <snip> removed ***
"C:\Windows\System32\Inetsrv\Appcmd.exe" set config -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='application/javascript',enabled='True']" /commit:apphost
Et encore une fois: après ces modifications, vous ne les verrez que dans le bloc-notes. Bloc-notes ++ (ainsi que l'éditeur de Visual Studio 2010 !!)