J'utilise le cache conservateur de Joomla

Cache

Paramètres du cache
  • J'ai inhibé le plugin  Système - Cache
  • J'ai ajouté le plugin  System - NoNumber Cache Cleaner  pour vider le cache

Compression des pages

j'utilise la compression de Joomla

Fichier .htaccess

j'ai aussi indiqué dans le fichier .htaccess le mode de compression:

Voir le code


<IfModule mod_filter.c>
 # Activer le filtre
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby
# Certains navigateurs ne peuvent pas avoir GZIP (les vieux)
BrowserMatch ^Mozilla/4 gzip-only-text/html

# Certains navigateurs ne peuvent pas avoir GZIP (les vieux)
BrowserMatch ^Mozilla/4\.0678 no-gzip

# On ne veut pas d'IE
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

# On ne compresse pas les images, elles le sont déjà.
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

</IfModule>


 

Plugins

 

System - ScriptsDown system
System - JS CSS Control system
System - JCH Optimize system
JotCache system

Le plugin ScriptsDown permet de positionner les scripts javascript en fin de page html, ce qui optimise leur chargement.

Le plugin JS CSS Control permet de filtrer les scripts our feuilles de styles à ne pas utiliser sur une page donnée; très utile pour optimiser un chargement, car Jommla charge tous les plugins.

Le plugin JCH optimize permet de minifier les scripts javascript et les feuilles de style.

Le plugin JotCache permet de remplacer le cache system en ayant plus de possibilité pour ignorer certains modules ou positions

 

Add expires headers

j'ai mis à jour mon fichier .htaccess de façon à signaler aux clients la durée de conservation des pages

Fichier .htaccess

Voir le code


# BEGIN Expire headers
<IfModule mod_expires.c>
 ExpiresActive On
  <FilesMatch "\.(ico|jpg|jpeg|png|gif|js|css|swf)$">
ExpiresDefault "access plus 1 month"
</FilesMatch>
 ExpiresDefault "access plus 7200 seconds"
 ExpiresByType text/css "access plus 1 month"
 ExpiresByType image/x-icon "access plus 1 year"
 ExpiresByType image/png "access plus 1 month"
 ExpiresByType image/gif "access plus 1 month"
 ExpiresByType image/jpeg "access plus 1 month"
 ExpiresByType image/jpg "access plus 1 month"
 ExpiresByType text/javascript "access plus 1 month"
 ExpiresByType application/javascript "access plus 1 month"
 ExpiresByType application/x-javascript "access plus 1 month"
 ExpiresByType application/x-shockwave-flash "access plus 1 year"
 ExpiresByType audio/mpeg "access plus 1 year"
 ExpiresByType text/html "access plus 7200 seconds"
 ExpiresByType application/xhtml+xml "access plus 7200 seconds" 
</IfModule>
# END Expire headers

<IfModule mod_headers.c>

# Remote ETag from headers
Header unset ETag

# Disable ETag for files
FileETag None

</IfModule>

<ifModule mod_headers.c>
    Header set Connection keep-alive
</ifModule>

CDN

je n'utilise pas de CDN (c'est payant)

par contre, j'ai remplacé les url locales pour jquery et bootstrap par des url globales

//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js

//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js

Minimize des scripts/feuilles de style

J'utilise directement le minifier de google, et j'ai remplacé les url des feuilles par un appel au script
ex:

    #dans le fichier index.php de joomla
    $doc->addStyleSheet('/min/?g=joomlamod');

 

 

Commentaires  
0 #4 root 21-06-2015 12:31
Citation en provenance du commentaire précédent de alm123 :
Bonjour,

Pour les scripts jQuery et bootstrap j'ai vu que vous utilisez les urls globales ce que j'aimerais bien faire aussi.

En fait j'ai du modifier les fichiers des libraries de joomla jquery.php et bootstrap.php
ex pour jquery:

//JHtml::_('script', 'jui/jquery.min.js', false, true, false, false, $debug);
$document = JFactory::getDocument();
$document->addScript('//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js', false, false);
Citer
0 #3 alm123 17-06-2015 19:57
Bonjour,

Pour les scripts jQuery et bootstrap j'ai vu que vous utilisez les urls globales ce que j'aimerais bien faire aussi.
Seulement dans le template protostar l'inclusion de ces scripts n'est pas direct. Visiblement, c'est fait dynamiquement.
Pourriez vous explicitez la manière dont vous vous y êtes pris. Un override ? une extension ?

Merci
Citer
0 #2 JL 05-06-2014 19:31
Citation en provenance du commentaire précédent de JB :
J'ai vu que vous utilisiez Jcomments et JchOptimize ..


Bonjour
En fait j'avais installé au départ JCH Optimize.
Je l'ai ensuite désactivé, car j'avais des soucis de priorité des scripts js et des css.
J'ai conservé ScriptDown pour l'optimisation du chargement des scripts,
et JS CSS control pour retirer les scripts/css inutiles suivant la page
J'utilise l'outil minify de google pour compresser "minifier" les scripts/css


Pour le thème j'utilise le théme par défaut. Mon template sinon est protostar, que j'ai modifié.
Citer
0 #1 JB 05-06-2014 19:15
J'ai vu que vous utilisiez Jcomments et JchOptimize
J'ai installé ces deux composants, et j'ai un petit soucis avec les notifications de nouveaux commentaires de jcomments. Ces dernières sont bloqués lorsque Jch est activé.
Avez vous connu un problème similaire ? Si oui l'avez vous résolu ?

Une autre petite question.
Quel est le thème que vous utilisez pour JComments ?
Citer
Ajouter un Commentaire