Améliorez la vitesse de chargement de votre site Joomla : Comment avons nous obtenu un "Grade A" avec Page Speed

résultat amélioration de la vitesse de téléchargement de page speed pour un site Joomla 2.5Pour notre site Alpha Design, nous avons obtenu un "Grade A" pour Page Speed sur notre page d'accueil.

Alors comment avons nous fait ? alors que nous n'avons :

  • ni activer le cache de Joomla
  • ni activer la compression Gzip de Joomla
  • que nous n'utilisons pas
    • de CDN (Content Delivery Network)
    • JCH optimize
  • Et que nous sommes sur un banal serveur mutualisé ovh

Nous n'avons pas de baguette magique mais voici ce que nous avons fait :

  • notre .htaccess active la compression Gzip & le cache des navigateurs
  • nous avons choisi comme template de base un template sans framework, ce qui entre autre limite les css @import
  • nous avons un minimum d'extensions installées sur notre site
  • le css et le javascript du template sont "minifiés" par l'une de ses options
  • le poids des images a été vérifié avec GTmetrix

Optimiser son .htaccess

Voici le contenu du code que nous avons ajouter au .htaccess de Joomla qui nous a aidé à obtenir ce grade A :

########## Begin - ETag Optimization
## This rule will create an ETag for files based only on the modification
## timestamp and their size. This works wonders if you are using rsync'ed
## servers, where the inode number of identical files differs.
## Note: It may cause problems on your server and you may need to remove it
FileETag MTime Size
########## End - ETag Optimization
########## Begin - Optimal default expiration time
## Note: this might cause problems and you might have to comment it out by
## placing a hash in front of this section's lines
## Note: Some people prefer using "now plus 1 month" instead of "now plus 1 year".
## Suit to taste.
<IfModule mod_expires.c>
        # Enable expiration control
        ExpiresActive On

        # Default expiration: 1 hour after request
        ExpiresDefault "now plus 1 hour"
        
        # CSS and JS expiration: 1 week after request
        ExpiresByType text/css "now plus 1 week"
        ExpiresByType application/javascript "now plus 1 week"
        ExpiresByType application/x-javascript "now plus 1 week"
        
        # Image files expiration: 1 month after request
        ExpiresByType image/bmp "now plus 1 month"
        ExpiresByType image/gif "now plus 1 month"
        ExpiresByType image/jpeg "now plus 1 month"
        ExpiresByType image/jp2 "now plus 1 month"
        ExpiresByType image/pipeg "now plus 1 month"
        ExpiresByType image/png "now plus 1 month"
        ExpiresByType image/svg+xml "now plus 1 month"
        ExpiresByType image/tiff "now plus 1 month"
        ExpiresByType image/vnd.microsoft.icon "now plus 1 month"
        ExpiresByType image/x-icon "now plus 1 month"
        ExpiresByType image/ico "now plus 1 month"
        ExpiresByType image/icon "now plus 1 month"
        ExpiresByType text/ico "now plus 1 month"
        ExpiresByType application/ico "now plus 1 month"
        ExpiresByType image/vnd.wap.wbmp "now plus 1 month"
        ExpiresByType application/vnd.wap.wbxml "now plus 1 month"
        ExpiresByType application/smil "now plus 1 month"
        
        # Audio files expiration: 1 month after request
        ExpiresByType audio/basic "now plus 1 month"
        ExpiresByType audio/mid "now plus 1 month"
        ExpiresByType audio/midi "now plus 1 month"
        ExpiresByType audio/mpeg "now plus 1 month"
        ExpiresByType audio/x-aiff "now plus 1 month"
        ExpiresByType audio/x-mpegurl "now plus 1 month"
        ExpiresByType audio/x-pn-realaudio "now plus 1 month"
        ExpiresByType audio/x-wav "now plus 1 month"
        
        # Movie files expiration: 1 month after request
        ExpiresByType application/x-shockwave-flash "now plus 1 month"
        ExpiresByType x-world/x-vrml "now plus 1 month"
        ExpiresByType video/x-msvideo "now plus 1 month"
        ExpiresByType video/mpeg "now plus 1 month"
        ExpiresByType video/mp4 "now plus 1 month"
        ExpiresByType video/quicktime "now plus 1 month"
        ExpiresByType video/x-la-asf "now plus 1 month"
        ExpiresByType video/x-ms-asf "now plus 1 month"
</IfModule>
########## End - Optimal expiration time
########## Begin - Automatic compression of resources
# Compress text, html, javascript, css, xml, kudos to Komra.de
# May kill access to your site for old versions of Internet Explorer
# The server needs to be compiled with mod_deflate otherwise it will send HTTP 500 Error.
# mod_deflate is not available on Apache 1.x series. Can only be used with Apache 2.x server.
# AddOutputFilterByType is now deprecated by Apache. Use mod_filter in the future.
<IfModule mod_deflate.c>

    ############################################
    ## enable apache served files compression Gzip
    # http://forum.ovh.com/showthread.php?45461-Magento-sur-un-mutualis%E9-OVH-Lequel&p=324717&viewfull=1#post324717

    ## http://developer.yahoo.com/performance/rules.html#gzip

    # Activer le filtre pour tout le contenu
    SetOutputFilter DEFLATE
    
    AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript
    # Netscape 4.x crée quelques problèmes¦
    BrowserMatch ^Mozilla/4 gzip-only-text/html
         
    # Netscape 4.06-4.08 en ont encore d'autres
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
       
    # IE se déguise en Netscape, mais OK
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
     
    # On ne compresse pas les images: le sont déja
    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
         
    # Pour que les proxies ne transmettent pas un mauvais contenu
    Header append Vary User-Agent env=!dont-vary
   
    #End Deflate
</IfModule>
########## End - Automatic compression of resources

Optimisez le poids de ses images

Pour améliorer le temps de chargement de vos pages, l'optimisation du poids de vos images est essentielle.

Soumettez vos pages pour analyses à GTmetrix dans le rapport qu'il produira, cliquez sur la rubrique "Optimize Images" et pour chacunes des images qui peuvent être améliorées en terme de poids (sans perte de définition) cliquez sur "Optimized version" vous les téléchargerez ainsi sur votre ordinateur. Il ne vous restera plus qu'à les renommer puis les renvoyer sur votre serveur.

Autres articles sur l'amélioration de la vitesse de téléchargement d'un site Joomla

Nous vous conseillons la lecture de ces articles :

D'autres tutoriels sur Joomla 3

Checklist SEO pour Joomla : le référencement Google avec Joomla

Performance de Joomla & Vitesse de chargement

Tutoriels Joomla 2.5

4.875 1 1 1 1 1 1 1 1 1 1 Notez cet article 4.88 (4 Votes)

Commentaires (2)

  1. five_phil

Articles intéressant merci, j'ai entendu que sur un serveur mutualise le gzip n'est pas possible !? Mon fournisseur aussi confirme cette info. Comment c'est possible pour vous ?

  Pièces jointes
  1. Thierry Tardif    five_phil

Bonjour,
C' est parfaitement possible sur un serveur mutualisé OVH cf : Activez Gzip, ce qui correspond à la partie de notre .htaccess commençant par la ligne :
########## Begin - Automatic compression of resources ...

  Pièces jointes
Il n'y a pas encore de commentaire

Ajoutez votre commentaire

Pièces jointes (0 / 3)
Share Your Location

Ils nous ont fait confiance

Universités & organismes de recherche

L' INSERM - unité U999, Université Paris Sud - Centre Chirurgical Marie Lannelongue

The Center for Groundwater Studies - Australie

L 'ENSAE : École Nationale de la statistique et de l'administration

La Maison des Sciences de l'Homme Paris Nord , UMS de l'université Paris 8, de l'université Paris 13 et du CNRS

L' Institut Supérieur de Développement - ISD Flaubert

Monpellier RIO imaging (MRI), plate - Forme Technologique (PFT), labellisée IBiSA.

Organismes publics

Ministère de la défense : État Major de la 3ème Brigade Mécanisée

La mairie de la ville de Marly le Roi

La mairie de la ville de Breuillet

La mairie de la ville de Thuir

L' Agence Locale de l'Energie de la métropole marseillaise

L' Institut de Formation en Masso-kinésithérapie de Montpellier - Centre Hospitalié Universitaire de Bellevu

Le Centre de Gestion de la fonction Publique Territoriale des Alpes de Haute Provence

La Capitelle - couveuse d'entreprises du Gard

Le Centre Social Intercommunal de Saint Quentin de la Poterie

Le collège & lycée Saint Charles

Le lycée Philippe Lamour

Le centre François Baclesse: Centre de Lutte Contre le Cancer (CLCC)

Entreprises

Astrium une filiale EADS No 1 européen et No 3 mondial de l'industrie spatiale

Messer France

Photonlines

Shânti Gestion

App-Line

Vincent et Mireille

Axiom Information

Galerie Art City

Le Château de Boisson

LM Control

Vagabonde International

Photonlines Energy

la Pisciculture la Croisière

FHSolution

NaturEditions

Etudions à l'étranger

E.P.A.

Microeconomix

Alatak

Jade Black Design

Une bague une destinée

Schmulb

Espace revêtements

Partenaire de réussite

Stylitek

Fun-Kart

The Crew Coach

Sanitval

Ateliers d'écriture de Virginie Lou

cam4you

SDB+

Armelle Bongrain - architecte d'intérieur

ECIM

Riveria Expat Consultants

Florence Thorez - Diététicienne Nutritionniste

Le Séchoir

Le Moulin de Bouydou

L' Espace de Formation Clinique et Psychanalytique

Cours de musique à Montpellier

Leads Planet

Agerix

Etudions à l'étranger

Biopreserv

Aloes RED

InfoTour

EverNew

Synalabs

Bureau d'Etudes Arlaud

Stage de musique été

Fermetures Neuvillaises

Linguapolis

Weblligence

ASD Protect

Véronique Crépaux - praticienne en Energétique Traditionnelle Chinoise

Françoise Léon - Psychologue du comportement alimentaire

Inovtolerie

BlueSafe

Viasocial

Repco Marine

King Jouet

Dr Abbas - cabinet ORL

ER3M

Cryo'net

Vectoring Talents

Desir d'écrire

Installation yperreault

Viaortho

Viadentiste

Alice Sweet Home

ONG / Associations

UNESCO: International Music Council

L' Association de Recherche en Soins Infirmiers

L' Union Internationale Contre la Tuberculose et les maladies respiratoires

Le Centre National des Risques Industriels

L' Institut International des Hautes Études en Psychanalyse

SurdiFrance : Association nationale de malentendants

La fondation Internationale de l'Hôpital Albert ScMhweitzer à Lambaréné

La Maison des Professions Libérales Ile de France

Le Conseil National de l' Enseignement Agricole Privé

La ligue Dauphiné Savoie de tennis

Le Conseil Permanent Régional des Associations d’Environnement

Le Syndicat des Podologues d'Île de France

La compagnie aux grands pieds

L'Espace de l'Ouest Lyonnais

 

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour notamment réaliser des statistiques de visites