Servir des fichiers CSS/JS pré-compressés
À partir de WP Rocket 3.6, lorsque des optimisations de fichiers sont activées, telles que Minifier/Combiner CSS et JS, WP Rocket crée 2 versions de chaque fichier. Un fichier CSS/JS standard et une version pré-compressée. La version pré-compressée sera servie avec les règles de htaccess.
- Un fichier CSS/JS standard, avec son extension .css ou .js
- une version pré-compressée en GZIP, avec l'extension .gz
Notez que si un fichier n'est pas traité par WP Rocket, par exemple s'il a min
dans le nom du fichier, ou s'il a été exclu, nous ne créerons pas de version pré-compressée.
Par défaut, WP Rocket ajoute des règles dans le fichier htaccess pour compresser les fichiers standards de manière dynamique.
Mais les fichiers pré-compressés ne seront pas servis automatiquement en raison de la possibilité de conflits serveurs. Si vous voulez profiter de ces fichiers, vous devrez ajouter les règles adéquates à votre configuration de serveur.
Apache / Litespeed
⚠️ Incompatible avec les serveurs Litespeed
N'utilisez PAS les règles suivantes si votre serveur utilise Litespeed.
Si vous utilisez Apache, vous pouvez ajouter les règles adéquates à votre fichier htaccess en installant le plugin d'aide suivant :
📥 Télécharger (.zip): WP Rocket | Add compressed assets htaccess rules
Développeurs : Vous trouverez le code de ce plugin sur GitHub.
Ce plugin d'aide ajoute les règles suivantes à votre fichier htaccess. Nous vous recommandons vivement de l'utiliser pour les ajouter au lieu de modifier manuellement votre fichier htaccess.
<IfModule mod_headers.c> RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -f RewriteRule \.(css|js)$ %{REQUEST_URI}.gz [L] # Prevent mod_deflate double gzip RewriteRule \.gz$ - [E=no-gzip:1] <FilesMatch "\.gz$"> # Serve correct content types <IfModule mod_mime.c> # (1) RemoveType gz # Serve correct content types AddType text/css css.gz AddType text/javascript js.gz # Serve correct content charset AddCharset utf-8 .css.gz \ .js.gz </IfModule> # Force proxies to cache gzipped and non-gzipped files separately Header append Vary Accept-Encoding </FilesMatch> # Serve correct encoding type AddEncoding gzip .gz </IfModule>
NGINX
Si vous utilisez NGINX, le code suivant devrait s'en charger automatiquement :
location / { gzip_static on; }
Dans ce cas, pour servir une requête pour /path/to/file
, NGINX essaiera de trouver et d'envoyer le fichier /path/to/file.gz
. Si le fichier n'existe pas, ou si le client ne supporte pas GZIP, NGINX enverra alors la version non compressée du fichier.