Question

J'ai une application de formulaires Web ASP.NET (3.5 SP1) sur laquelle je travaille et j'essaie d'activer gzip pour HTML et CSS qui arrivent.j'utilise cette mise en œuvre (et j'en ai essayé quelques autres qui se connectent à Application_BeginRequest), et cela semble corrompre le fichier CSS externe que les pages utilisent, mais par intermittence... tout à coup, tous les styles disparaîtront lors d'une actualisation de la page, resteront ainsi pendant un certain temps, puis recommencez soudainement à travailler.

IE7 et FF3 présentent ce comportement.Lors de l'affichage du CSS à l'aide de la barre d'outils du développeur Web, il renvoie du charabia.L'en-tête de contrôle de cache apparaît comme "privé", mais je n'en sais pas suffisamment pour savoir si c'est un facteur contributif ou non.

En outre, cela s'exécute sur le serveur de développement ASP.NET.Ce serait peut-être bien avec IIS, mais je développe sur XP et ce serait IIS5.

Était-ce utile?

La solution

Est-ce que seuls les fichiers CSS sont corrompus ?Les fichiers JS (ou tout autre fichier texte statique) passent-ils correctement ?

Pouvez-vous également dupliquer le comportement si vous accédez directement au fichier CSS ?

J'ai uniquement activé la compression sur IIS du serveur Windows 2003 en utilisant cette approche :

  1. IIS → Sites Web → Propriétés → onglet Service, cochez les deux cases
  2. IIS → Extensions de service Web → Clic droit, Ajouter un nouveau
      Name
          Http Compression 
      Required Files
          %systemroot%\system32\inetsrv\gzip.dll 
  3. IIS → Cliquez avec le bouton droit sur le nœud supérieur, Internet Information Services, cochez Activer la modification directe de la métabase
  4. Sauvegarder et modifier %systemroot%\system32\inetsrv\MetaBase.xml
    1. Trouver Location ="/LM/W3SVC/Filters/Compression/gzip"
      • Ajouter png, css, js et toute autre extension de fichier statique à HcFileExtensions
      • Ajouter aspx et toute autre extension exécutable de HcScriptFileExtensions
      • Sauvegarder
  5. Redémarrez IIS (exécutez iisreset)

Si vous disposez d'un serveur Windows 2003/2008 avec lequel jouer, vous pouvez essayer cette approche.

Autres conseils

Si vous comptez déployer sur IIS 6 ou IIS 7, utilisez simplement la compression IIS intégrée.Nous l'utilisons sur les sites de production pour compresser HTML, CSS et JavaScript sans erreur.Il met également en cache la version compressée sur le serveur, de sorte que la compression n'est effectuée qu'une seule fois.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top