Ton site rame ? Voici 9 quick wins concrets (cache, JS à la demande, WebP/AVIF, headers de cache, index SQL…) pour accélérer ton site web sans “plugin miracle”.

Pourquoi votre site web est lent ?

Trois coupables reviennent tout le temps :

  • un TTFB (Time To First Byte) trop élevé (serveur lent ou base de données qui rame)
  • Scripts lourds chargés sur toutes les pages
  • Images XXL (300 KB, 1 MB, voire plus)

Bonne nouvelle : on peut corriger une grosse partie en 60–90 min.

Baisser le TTFB (Time To First Byte)

  • Cache pleine page : active un cache serveur (Varnish / Nginx FastCGI) ou un plugin sérieux côté CMS.
  • OPcache activé et mémoire suffisante (PHP‑FPM).
  • Base de données : index sur les colonnes utilisées en WHERE / JOIN ou ORDER BY.
  • Hébergement : vise PHP 8.2/8.3, HTTP/2 (ou 3) et disques NVMe.

Astuce : si une page est lente en navigation privée (sans être connecté à l’admin), c’est probablement que le cache pleine page n’est pas servi.

Ne charge pas les scripts partout

Charge un script uniquement là où il est utile (formulaire, slider, carte…).

WordPress :

// Exemple : ne charger Contact Form 7 que sur /contact
add_action('wp_enqueue_scripts', function () {
if (!is_page('contact')) {
wp_dequeue_style('contact-form-7');
wp_dequeue_script('contact-form-7');
}
}, 100);

Utilise defer/async pour les JS non critiques et mets le CSS critique inline minimal.

Dompter les images (> 300 KB)

  • Formats : WebP (voire AVIF) + tailles adaptées (pas d’image 2400 px pour un bloc 600 px).
  • Responsive : srcset + sizes ; loading="lazy" par défaut.
<img src="/img/hero-800.webp"
srcset="/img/hero-400.webp 400w, /img/hero-800.webp 800w, /img/hero-1600.webp 1600w"
sizes="(max-width: 768px) 100vw, 800px"
loading="lazy" alt="…">

CMS : vérifie les tailles d’images (WordPress image sizes / Drupal Image Styles / PrestaShop thumbnails) et régénère.

Police d’écriture : rapide et stable

Auto‑héberge tes fonts, active font-display: swap;, limite le nombre de variantes (300/400/700 suffisent souvent).

@font-face {
font-family: "Inter";
src: url("/fonts/inter.woff2") format("woff2");
font-display: swap;
}

Code Tiers : la diète

  • Maps, chat, A/B test, trackers : charge après consentement et après interaction quand c’est possible.
  • Dans GTM, règle des déclencheurs conditionnels et évite le double chargement (site + GTM).

Headers de cache pour les assets

Pour JS/CSS/images versionnés, on peut "cacher" longtemps.

Apache :

# Cache long pour assets fingerprintés
<IfModule mod_headers.c>
<FilesMatch "\.(js|css|png|jpg|webp|avif|svg|woff2)$">
Header set Cache-Control "public, max-age=31536000, immutable"
</FilesMatch>
</IfModule>

Nginx :

location ~* \.(js|css|png|jpg|webp|avif|svg|woff2)$ {
expires 1y;
add_header Cache-Control "public, immutable";
}

HTML plus léger

  • Supprime ce qui ne sert pas (sliders, librairies dupliquées, CSS non utilisés).
  • Minifie HTML/CSS/JS après t’être assuré que le site est stable (attention aux inlines critiques).

Base de données propre et indexée

Nettoie les révisions/trashed posts (WP), vieilles sessions (Drupal), statistiques lourdes (PrestaShop).

Index : si une requête trie/filtre sur date_awnser, indexe‑la :

CREATE INDEX idx_files_generations_date_awnser
ON files_generations (date_awnser);

Vérifie avec EXPLAIN et surveille rows_examined.

Un CDN quand c’est pertinent

  • Utile si audience géographiquement dispersée ou pics de trafic.
  • Servez seulement les assets statiques ; laissez les pages dynamiques au serveur (sauf si cache edge maîtrisé).

Mini check‑list « avant/après »

  • TTFB < 500 ms (visiteurs non connectés)
  • Aucune image > 300 KB hors visuels hero
  • JS non critique en defer et chargé à la demande
  • Cache longue durée pour assets fingerprintés
  • 0 librairie dupliquée, 0 plugin chargé partout « pour rien »

Bonus : mesurer sans se prendre la tête

  • Outils navigateur (onglet Réseau → TTFB, taille, waterfall).
  • Lighthouse (onglet Audits) pour pointer scripts/images lourds.
  • Logs serveur : surveille les 500/timeout et les requêtes lentes SQL (slow log).

Conclusion

Pas besoin d’un « plugin miracle ». En pratiquant ces 9 quick wins, tu fais baisser le TTFB, tu coupes la graisse JS et tu sers des images au bon format — résultat : un site plus rapide, plus stable, mieux noté par Google et surtout plus agréable pour les utilisateurs.
 


Besoin d’un audit perf express (1/2 journée) :

je mesure, je liste les quick wins, et je te livre un plan d’action concret + snippets prêts à coller
( Apache / WordPress / Drupal / Prestashop / ... )

Contactez-moi