La raison pour laquelle il ne fait que compresser votre fichier ASPX est que le code que vous avez écrit est uniquement incorporé dans le fichier ASPX. Un fichier ASPX est une requête distincte de tout contenu lié qu'il contient. Donc, si vous avez une page ASPX qui contient:
<img src="www.example.com\exampleimg.jpg" alt="example" />
Cela équivaudrait à 2 demandes (recherche DNS mis à part) de votre navigateur aux ressources:
- pour la page ASPX et
- pour l'image contenue par la page aspx.
Chaque demande a sa propre réponse vapeur. Le code que vous avez publié est attaché uniquement au flux de réponse ASPX, c'est pourquoi seule votre page ASPX est compressée.Les lignes 1 & 2 de votre code posté reprennent pour l'essentiel le flux de réponse normal de la page et injectent un code "intermédiaire" qui dans ce cas mange et compresse le flux de sortie normal avec un flux GZip et l'envoie à la place.
Les lignes 3 & 4 configurent les en-têtes de réponse. Toutes les requêtes et réponses http ont des en-têtes qui sont envoyés avant le contenu. Ceux-ci mettent en place la requête/réponse afin que le serveur et le client sachent ce qui est envoyé et comment.
Dans ce cas, la ligne 3 informe le navigateur client que le flux de réponse est compressé via gzip et doit donc être décompressé par le navigateur client avant d'être affiché.
Et la ligne 4 est simplement en train d'activer l'en-tête Accept-Encoding de la réponse. Cela aurait autrement été absent de la réponse.
Vous pouvez écrire/obtenir des modules enfichables qui vous permettent de compresser un multitide d'autres types MIME tels que * .js et * .css, mais il vaut mieux utiliser la fonctionnalité de compression intégrée d'IIS.
Vous avez pas dit que verson d'IIS que vous utilisez, mais si elle était IIS 7.0, il faudrait que vous inclure quelque chose comme ce qui suit dans la section <system.webserver>
vous de fichier web.config:
<httpCompression>
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<staticTypes>
<add mimeType="text/*" enabled="true" />
</staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" />
..
Richard
Salut @Ben, Pouvez-vous s'il vous plaît me dire comment compresser mes fichiers en utilisant IIS, ce que tous les paramètres que je dois effectuer, Bien que je n'ai pas accès aux configurations IIS, mais je Je vais essayer de le faire. S'il vous plaît dites-moi comment compresser les fichiers en utilisant IIS ?? Merci! – Prashant
http://stackoverflow.com/a/6992948/8479 détaille la simple modification de web.config nécessaire pour IIS7 ou supérieur. – Rory