Hébergement web16 décembre 2025 24 vues

Comment activer la compression GZIP sur cPanel

Comment activer la compression GZIP sur cPanel

Comment activer la compression GZIP sur cPanel

Temps estimé : 5 minutes
Difficulté : Débutant ⭐
Prérequis : Accès à cPanel
Impact : Réduction de 60-80% de la taille des fichiers


📋 Introduction

La compression GZIP est une technique qui réduit considérablement la taille des fichiers envoyés par votre serveur web vers le navigateur de vos visiteurs. C'est l'une des optimisations les plus simples et les plus efficaces pour accélérer votre site web.

Comment ça fonctionne ?

Sans GZIP :
Serveur ──────────────────────────────────> Navigateur
         Fichier HTML : 100 Ko (taille originale)

Avec GZIP :
Serveur ─────────> Navigateur
         30 Ko     (décompression automatique)
         ↓
         100 Ko (fichier original reconstitué)

Le serveur compresse les fichiers avant de les envoyer, le navigateur les décompresse automatiquement. Le processus est transparent pour l'utilisateur.


🚀 Avantages de la Compression GZIP

Gains de performance

Métrique Amélioration
📉 Réduction taille fichiers 60% à 80%
Temps de chargement Jusqu'à 50% plus rapide
📊 Bande passante Réduite significativement
🔍 Score PageSpeed Amélioration notable
📱 Expérience mobile Meilleure (moins de données)

Exemple concret de compression

Type de fichier Taille originale Taille compressée Réduction
HTML 100 Ko 25 Ko 75%
CSS 80 Ko 18 Ko 78%
JavaScript 150 Ko 45 Ko 70%
JSON/XML 50 Ko 12 Ko 76%
Fonts (SVG) 40 Ko 15 Ko 63%

💡 Exemple réel : Une page WordPress typique de 500 Ko peut être réduite à environ 150 Ko avec GZIP, soit 70% de réduction !


📂 Types de Fichiers à Compresser

✅ Fichiers à compresser (texte)

Type Extensions MIME Type
HTML .html, .htm text/html
CSS .css text/css
JavaScript .js application/javascript
JSON .json application/json
XML .xml application/xml
Texte .txt text/plain
SVG .svg image/svg+xml
Fonts .ttf, .otf font/ttf, font/otf
WOFF .woff font/woff

❌ Fichiers à NE PAS compresser

Type Raison
Images (JPEG, PNG, GIF, WebP) Déjà compressées
Vidéos (MP4, WebM) Déjà compressées
Audio (MP3, OGG) Déjà compressés
PDF Déjà compressé
Archives (ZIP, RAR, GZ) Déjà compressées

⚠️ Important : Compresser des fichiers déjà compressés peut augmenter leur taille et ralentir le serveur inutilement.


⚙️ Méthode 1 : Optimize Website (Recommandée)

C'est la méthode la plus simple, directement intégrée à cPanel.

Étape 1 : Accéder à l'outil

  1. Connectez-vous à cPanel
  2. Dans la section Logiciels (Software), cliquez sur Optimize Website
    Image

💡 Astuce : Utilisez la barre de recherche cPanel et tapez "optimize" pour trouver rapidement l'outil.


Étape 2 : Choisir le type de compression

L'interface présente 3 options :

Option Description Recommandation
Disabled Compression désactivée ❌ Non recommandé
Compress All Content Compresse tout le contenu Recommandé
Compress the specified MIME types Compresse uniquement les types spécifiés ⚠️ Avancé

Étape 3 : Activer la compression

Pour la plupart des sites :

  1. Sélectionnez "Compress All Content"
  2. Cliquez sur "Update Settings"

ImageMessage de confirmation :

✅ Website optimization preferences updated.
Content compression is now enabled.
Content compression is now enabled for all content.

Image

Option avancée : Types MIME spécifiques

Si vous préférez un contrôle précis :

  1. Sélectionnez "Compress the specified MIME types"
  2. Entrez les types MIME à compresser :
text/html text/plain text/xml text/css text/javascript 
application/javascript application/x-javascript application/xml 
application/json application/rss+xml application/xhtml+xml
image/svg+xml font/ttf font/otf font/woff font/woff2
  1. Cliquez sur "Update Settings"

📝 Méthode 2 : Via .htaccess

Si l'outil "Optimize Website" n'est pas disponible ou pour un contrôle plus fin.

Étape 1 : Accéder au fichier .htaccess

  1. Dans cPanel, ouvrez le Gestionnaire de fichiers (File Manager)
  2. Allez dans le dossier public_html
  3. Cliquez sur Paramètres (Settings) en haut à droite
  4. ✅ Cochez "Afficher les fichiers cachés (dotfiles)"
  5. Localisez et éditez le fichier .htaccess

Étape 2 : Ajouter le code de compression

Ajoutez ce code au début du fichier .htaccess :

# =============================================
# COMPRESSION GZIP
# =============================================
<IfModule mod_deflate.c>
    # Compresser HTML, CSS, JavaScript, Text, XML et fonts
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/atom+xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE application/json
    AddOutputFilterByType DEFLATE application/ld+json
    AddOutputFilterByType DEFLATE application/manifest+json
    AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
    AddOutputFilterByType DEFLATE application/x-font-ttf
    AddOutputFilterByType DEFLATE application/x-font-opentype
    AddOutputFilterByType DEFLATE application/x-font-truetype
    AddOutputFilterByType DEFLATE font/ttf
    AddOutputFilterByType DEFLATE font/otf
    AddOutputFilterByType DEFLATE font/opentype
    AddOutputFilterByType DEFLATE font/woff
    AddOutputFilterByType DEFLATE font/woff2
    AddOutputFilterByType DEFLATE image/svg+xml
    AddOutputFilterByType DEFLATE image/x-icon
    
    # Compatibilité navigateurs anciens
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    
    # Ne pas compresser les images (déjà compressées)
    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|webp)$ no-gzip
    
    # Header Vary pour les proxys
    Header append Vary User-Agent env=!dont-vary
</IfModule>
# =============================================
# FIN COMPRESSION GZIP
# =============================================

Code simplifié (minimal)

Si vous préférez une version plus courte :

# COMPRESSION GZIP (version simple)
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css
    AddOutputFilterByType DEFLATE text/javascript application/javascript
    AddOutputFilterByType DEFLATE application/xml application/json
    AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>

Étape 3 : Sauvegarder

  1. Cliquez sur Enregistrer les modifications (Save Changes)
  2. Testez votre site pour vérifier qu'il fonctionne correctement

🔧 Méthode 3 : Via Plugin WordPress

Pour les sites WordPress, certains plugins de cache activent automatiquement GZIP.

Plugins avec compression GZIP intégrée

Plugin Gratuit Configuration GZIP
WP Rocket ❌ Payant Automatique
LiteSpeed Cache ✅ Gratuit Automatique (serveurs LiteSpeed)
W3 Total Cache ✅ Gratuit Performance → Enable HTTP compression
WP Super Cache ✅ Gratuit Advanced → Compress pages
WP Fastest Cache ✅ Gratuit Options → Gzip
Autoptimize ✅ Gratuit Non inclus (uniquement minification)

Exemple : Activer GZIP avec WP Super Cache

  1. Installez et activez WP Super Cache
  2. Allez dans Réglages → WP Super Cache
  3. Onglet Avancé
  4. ✅ Cochez "Compress pages so they're served more quickly to visitors"
  5. Cliquez sur Mettre à jour le statut

Exemple : Activer GZIP avec W3 Total Cache

  1. Installez et activez W3 Total Cache
  2. Allez dans Performance → General Settings
  3. Dans la section Browser Cache
  4. ✅ Cochez "Enable HTTP (gzip) compression"
  5. Cliquez sur Save all settings

✅ Vérifier que GZIP est Activé

Méthode 1 : Outils en ligne

Utilisez ces outils gratuits pour vérifier la compression :

Outil URL Avantage
GiftOfSpeed giftofspeed.com/gzip-test Simple et rapide
CheckGzipCompression checkgzipcompression.com Détaillé
GTmetrix gtmetrix.com Analyse complète
PageSpeed Insights pagespeed.web.dev Officiel Google
KeyCDN Tools tools.keycdn.com/http2-test Multi-tests

Méthode 2 : Navigateur (DevTools)

  1. Ouvrez votre site dans Chrome ou Firefox
  2. Appuyez sur F12 pour ouvrir les DevTools
  3. Allez dans l'onglet Network (Réseau)
  4. Rechargez la page (F5)
  5. Cliquez sur un fichier (ex: le document HTML principal)
  6. Dans l'onglet Headers (En-têtes), cherchez :
Content-Encoding: gzip

Si vous voyez Content-Encoding: gzip → La compression est active ✅


Méthode 3 : Ligne de commande (curl)

curl -I -H "Accept-Encoding: gzip,deflate" https://votre-site.com

Cherchez dans la réponse :

Content-Encoding: gzip

📊 Comparer Avant/Après

Utiliser GTmetrix

  1. Allez sur gtmetrix.com
  2. Testez votre URL avant d'activer GZIP
  3. Notez le poids de la page et le temps de chargement
  4. Activez GZIP
  5. Testez à nouveau
  6. Comparez les résultats

Exemple de résultat

Métrique Avant GZIP Après GZIP Amélioration
Poids total 2.5 Mo 850 Ko -66%
Temps de chargement 4.2s 2.1s -50%
Score Performance 72/100 89/100 +17 points

🔧 Dépannage

GZIP ne fonctionne pas

❌ Problème ✅ Solution
Module mod_deflate non installé Contactez l'hébergeur pour l'activer
Code .htaccess ignoré Vérifiez que AllowOverride est activé
Handler PHP incompatible CGI/FastCGI peuvent nécessiter une config différente
CDN désactive la compression Activez GZIP dans les paramètres du CDN
Cache navigateur Videz le cache et testez en navigation privée

Erreur 500 après modification .htaccess

  1. Via FTP ou Gestionnaire de fichiers :

    • Éditez le fichier .htaccess
    • Supprimez le code GZIP ajouté
    • Sauvegardez
  2. Le module mod_deflate n'est pas disponible :

    • Le code <IfModule mod_deflate.c> devrait éviter l'erreur
    • Contactez l'hébergeur pour vérifier la disponibilité du module

GZIP actif mais pas sur tous les fichiers

Vérifiez ces points :

  1. Types MIME manquants : Ajoutez les types manquants au code .htaccess
  2. Plugin de cache : Certains plugins servent des fichiers statiques sans GZIP
  3. CDN : Les fichiers servis par le CDN peuvent ne pas être compressés
  4. Ressources externes : Les fichiers hébergés ailleurs ne sont pas sous votre contrôle

Conflit avec d'autres règles .htaccess

Placez le code GZIP au début du fichier .htaccess, avant les règles WordPress :

# COMPRESSION GZIP (mettre en premier)
<IfModule mod_deflate.c>
    # ... code de compression ...
</IfModule>

# BEGIN WordPress
# ... règles WordPress ...
# END WordPress

⚡ GZIP vs Brotli

Brotli est un algorithme de compression plus récent, offrant de meilleures performances.

Comparaison

Critère GZIP Brotli
Compression ~70% ~75-80%
Support navigateurs 99%+ 96%+
Vitesse compression Rapide Plus lent
Vitesse décompression Rapide Rapide
Support serveurs Universel Moderne

Activer Brotli (si disponible)

# COMPRESSION BROTLI (si mod_brotli disponible)
<IfModule mod_brotli.c>
    AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml
    AddOutputFilterByType BROTLI_COMPRESS text/css text/javascript
    AddOutputFilterByType BROTLI_COMPRESS application/javascript application/json
    AddOutputFilterByType BROTLI_COMPRESS image/svg+xml
</IfModule>

💡 La plupart des hébergements mutualisés utilisent GZIP. Brotli est plus courant sur les VPS/dédiés et les CDN comme Cloudflare.


🎯 Bonnes Pratiques

Combiner GZIP avec d'autres optimisations

Optimisation Impact Priorité
GZIP Compression -70% taille fichiers 🔴 Haute
Minification CSS/JS -10-30% supplémentaire 🟠 Moyenne
Cache navigateur Évite les re-téléchargements 🔴 Haute
Optimisation images -50-80% taille images 🔴 Haute
CDN Réduction latence 🟠 Moyenne
HTTP/2 Multiplexage connexions 🟢 Bonus

Code .htaccess complet (GZIP + Cache)

# =============================================
# COMPRESSION GZIP
# =============================================
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
    AddOutputFilterByType DEFLATE text/css text/javascript
    AddOutputFilterByType DEFLATE application/xml application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml application/atom+xml
    AddOutputFilterByType DEFLATE application/javascript application/x-javascript
    AddOutputFilterByType DEFLATE application/json application/ld+json
    AddOutputFilterByType DEFLATE image/svg+xml image/x-icon
    AddOutputFilterByType DEFLATE font/ttf font/otf font/woff font/woff2
</IfModule>

# =============================================
# CACHE NAVIGATEUR
# =============================================
<IfModule mod_expires.c>
    ExpiresActive On
    
    # Images
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType image/webp "access plus 1 year"
    ExpiresByType image/svg+xml "access plus 1 year"
    ExpiresByType image/x-icon "access plus 1 year"
    
    # Fonts
    ExpiresByType font/ttf "access plus 1 year"
    ExpiresByType font/otf "access plus 1 year"
    ExpiresByType font/woff "access plus 1 year"
    ExpiresByType font/woff2 "access plus 1 year"
    
    # CSS et JavaScript
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
    
    # HTML
    ExpiresByType text/html "access plus 0 seconds"
</IfModule>

# =============================================
# EN-TÊTES DE SÉCURITÉ ET PERFORMANCE
# =============================================
<IfModule mod_headers.c>
    # Vary header pour les proxys
    Header append Vary Accept-Encoding
    
    # Keep-Alive
    Header set Connection keep-alive
</IfModule>

📝 Récapitulatif

ACTIVER LA COMPRESSION GZIP :

MÉTHODE 1 - Optimize Website (Recommandée) :
1. cPanel → Logiciels → Optimize Website
2. Sélectionner "Compress All Content"
3. Cliquer sur "Update Settings"
4. C'est fait ! ✅

MÉTHODE 2 - .htaccess :
1. Ouvrir le Gestionnaire de fichiers
2. Éditer .htaccess dans public_html
3. Ajouter le code de compression
4. Sauvegarder

MÉTHODE 3 - Plugin WordPress :
└── WP Super Cache, W3 Total Cache, WP Fastest Cache...

VÉRIFIER L'ACTIVATION :
├── giftofspeed.com/gzip-test
├── gtmetrix.com
├── DevTools → Network → Headers
└── Chercher "Content-Encoding: gzip"

TYPES À COMPRESSER :
├── ✅ HTML, CSS, JavaScript, JSON, XML
├── ✅ Fonts (TTF, OTF, WOFF, WOFF2)
├── ✅ SVG, texte
└── ❌ Images, vidéos, PDF (déjà compressés)

GAINS ATTENDUS :
├── 📉 Réduction taille : 60-80%
├── ⚡ Chargement : jusqu'à 50% plus rapide
└── 📊 Score PageSpeed : +10-20 points