optimisation wordpress Quelques optimisations .htaccess pour Wordpress.

Depuis que je suis sous WordPress, j’essai de grapiller la moindre petite optimisation possible afin que mon site soit le mieux visible et le plus navigablement possible pour mes différents lecteurs. On trouve souvent à droite à gauche deux ou trois conseils, et dans cet article je vais vous faire partager mes paramètres pour le fichier htaccess.

Activer et désactiver les modules nécessaires.

163318364 cac3aa2204 m Quelques optimisations .htaccess pour Wordpress.

Pour commencer, j’ai intégrer ces 4 lignes :

SetEnv REGISTER_GLOBALS 0
SetEnv ZEND_OPTIMIZER 1
SetEnv MAGIC_QUOTES 0
SetEnv PHP_VER 5

Il parait que c’est dédié pour les hébergements OVH, mais les commandes restent standard sur les serveurs Apaches.

On désactive la directive REGISTER_GLOBALS qui n’apporte rien à WordPress, tout comme la directive MAGIC_QUOTES avec « SetEnv MAGIC_QUOTES 0″.

On active cependant le module ZEND_OPTIMIZER qui permet d’optimiser le code pHP et de mettre en cache les requêtes les plus utilisées

On active aussi le PHP en version 5 qui sera bien utile pour pas mal de module WordPress.

Bien gérer le cache de votre site.

3411775886 fcf0af1a42 m Quelques optimisations .htaccess pour Wordpress.

On peut aussi définir la façon d’utiliser au mieux le cache de votre site. En effet certains éléments n’évolue pas dans le temps, il faut donc leur définir une période de cache optimium afin de pas les retélécharger du serveur à chaque fois.

#CACHE

</IfModule>

ExpiresActive on

#html/php

#images

ExpiresByType image/jpg « modification plus 7 days »

ExpiresByType image/jpeg « modification plus 7 days »

ExpiresByType image/gif « modification plus 7 days »

ExpiresByType image/png « modification plus 7 dayss »

ExpiresByType image/x-icon « modification plus 7 days »


#flash

ExpiresByType application/x-shockwave-flash « access plus 1 days »

#css et scripts

ExpiresByType text/css « access plus 1 days »

Header set Cache-Control « max-age=86400, public »

ExpiresByType text/javascript « access plus 1 days »

ExpiresByType text/html « access plus 1 seconds »

ExpiresDefault « access plus 1 seconds »

ExpiresByType text/xml « access plus 1 seconds »

#tout le reste

Header set Cache-Control « max-age=86400, public »

### / CACHE

Vous pouvez bien sur modifier les valeurs en fonctions du cache que vous désirez affecter à tel ou tel fichier, mais attention quand même, à ne pas mettre de valeur trop longue, sauf si bien sur vous êtes sur de votre choix.

Compressez les données échangées

3325817757 48c90deca2 m Quelques optimisations .htaccess pour Wordpress.

Aujourd »hui, la plupart des navigateurs acceptent les données compressées, alors pourquoi s’en priver.

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/xhtml+xml application/xml application/rss+xml application/atom_xml

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/xhtml+xml application/xml application/rss+xml application/atom_xml

Cette ligne permet de compresser certains type de fichier afin d’améliorer le nombre de Ko transitant sur le réseau.

WP Super Cache.

WP Super Cache est un plugin pour word press qui permet de généré des pages statiques en cache afin d’alléger les requêtes PHP.

Le plugin est disponible sur : ocaoimh.ie/wp-super-cache/

Conclusion

J’utilise actuellement toutes ces méthodes, en attendant de pouvoir prendre un serveur dédié, histoire de plus être contraint à toujours grapiller à droite et à gauche quelques optimisation pour améliorer la navigabilité.

J’espère faire un topic bientôt sur la configuration optimale de my.cnf pour les SQL privée de ovh dans le but d’améliorer la réactivité de wordpress et éviter cette erreur de problème de connection à la base de donnée (Error establishing a database connection).

  • http://azur.ironie.org/ David (Azur Dev)

    Attention, tout ceci est très spécifique au serveur.

    Par exemple les 4 premières lignes ne servent à rien sur mon serveur: déjà le cas, Zend pas installé, déjà le cas et spécifique OVH en effet.

    Ensuite les délais de cache c’est une bonne idée, même si j’aurai mis bien plus long!

    La compression, bonne idée aussi, mais très spécifique. En plus WordPress utilise déjà la meilleure compression disponible. ;-)

  • http://www.semageek.com/ semageek

    Pour les délais de cache j’ai mis volontaire des valeurs courtes pour éviter certains bugs pour les non initiés (histoire de ne pas « planter » leur site, avec une impossibilité de rafraichir leur index.php par exemple)
    A chacun de faire sa sauce en fonction de ses besoins.
    Sinon c’est clair qu’une grosse partie de cet conf est dédié pour OVH.

  • Pingback: BlOg’X Office #26 : petit medley du Web | Autour du Web

  • Pingback: Améliorer le temps de réponse de Wordpress avec le .htaccess et PHP 5 | AbriCoCotier.fr

  • http://www.forumbrico.fr Forumbrico

    Faut-il mettre simplement ces lignes ou ajouter # BEGIN WordPress et # END WordPress ?

    Merci

    • http://www.semageek.com/ Semageek

      @Forumbrico :# BEGIN WordPress et # END WordPress sont l’encapsulage de wordpress, c’est là où il va insérer son code, comme pour les permaliens, insère le code en dehors de ces balises.

  • http://www.forumbrico.fr Forumbrico

    Merci Semageek !

  • http://blogmotion.fr/ Mr Xhark

    Pourquoi avoir mis :
    ExpiresDefault « access plus 1 seconds »

    en plein milieu du flash ? et pourquoi à 1 seconde ?

    • http://www.semageek.com/ Semageek

      @MrXhark
      J’ai mis le ExpiresDefault à une seconde par sécurité pour ne pas avoir de souci et bloquer le site avec du cache, comme souvent je fais des modifs, le cache prenais le dessus et je ne les voyais pas. Et il faut bien souvent faire attention avec ces valeurs car j’ai d’ailleurs eut un gros bug à une période à cause de cette manip.
      Actuellement, je fonctionne sans cache, mais je vais le remettre en route bientôt, histoire de grappiller quelques ms.
      On va dire que ce « tuto » est plus une piste à explorer et qu’il faut bien ajuster les valeurs de temps, d’ailleurs au jour d’aujourd’hui, j’en modifierais surement certaines.