Formation, Conseils, Sites Internet

Nous contacter : contact@xlformation.com - 06 25 58 02 97

Comment empêcher le cache du plugin de grossir de manière exagérée..

 

Identifier une quantité anormale de fichiers cache

Quelques fois après avoir installé et configuré le plugin, vous risquez de trouver une quantité anormale de fichier cache dans le dossier du plugin. Cela doit être surveillé, le nombre de fichiers créé pouvant remplir votre disque sur votre serveur d'hébergement. Ceci indique d'ailleurs que le plugin n'est pas efficace puisque la quantité de fichiers est tel que le plugin va augmenter le temps de chargement des pages et avoir l'effet exactement inverse de celui qui est visé !

Tout d'abord, il est normal que le plugin génère une certaine quantité de fichiers de cache. Le nombre de fichier varie suivant chaque site et on peut estimer que le nombre de fichiers de cache correspond à environ le double du nombre de pages que vous avez sur votre site. Si vous pensez que le nombre de fichiers cache généré est trop élevé, continuez de lire cette page pour tenter d'identifier ce qui cause cette anomalie et comment y remédier.


Comment est-ce que le plugin génère les fichiers cache

Avant de pouvoir gérer les fichiers cache, nous avons besoin de comprendre comment et pourquoi ces fichiers sont générés.

Le plugin va analyser le code HTML généré par votre site pour trouver les fichiers CSS et les styles directement intégré dans vos pages (le formatage direct dans un contenu sans passer par un fichier CSS de votre template), mais va procéder également de la même manière pour le code JAVASCRIPT, ceci afin de combiner tout ce qu'il aura trouvé dans un fichier.

Il va alors créer une sorte de "table des matières" des pages qu'il aura traité avec un id de référence pour chaque page et va le faire correspondre à un fichier de cache avec le même id (pour pouvoir le retrouver par la suite). Si le plugin détecte que plusieurs pages ont les mêmes appels CSS et javascript, il va également faire en sorte qu'un seul fichier de cache soit utilisable pour plusieurs pages plutôt que de créer un fichier de cache pour chaque page.

Ceci dit, sur certains sites, pour certaines pages particulières, une partie particulière dans une url de vos pages (souvent à cause d'une requête particulière qui ajoute des éléments à votre url), les pages vont légèrement être différentes pour le css ou le javascript. Un exemple classique serait une page de téléchargement de fichiers sur votre site : l'id permettant de cibler le fichier ou l'utilisateur va changer à chaque fois, forcément... Le plugin alors va se mettre à générer un fichier de cache différent pour tenter de gérer ces changements détectés...

Pour remédier à cette situation, nous devons trouver le fichier ou le script qui crée cette situation et indiquer au plugin JCH de ne plus prendre en compte ces informations en l'excluant de l'optimisation. Voici la procédure que vous devriez suivre pour identifier et résoudre alors cette situation.


Procédure 4.2. Trouver le fichier ou le script qui change en permanence et qui cause la création d'un cache incorrect

  1. Activer le mode débugage et désactivez le cache

    La première chose à faire est d'activer le réglage  debug dans les réglages Miscellaneous Settings sur l'onglet "Options de base".

    Debug Setting

    Enable Debug

    This inserts the url of the individual files in the combined file above each file contents and will help us debug this issue.

    Commented out urls

    Commented out urls

    [Note] Note

    Be sure to disable any page caching plugins so any changes to the combined files will be detected immediately.

  2. Compare the cache id in the combined file's url

    Now view the source of the page and note the cache id in the url of the combined file generated by JCH Optimize. It will be the section with about 16 arbritrary looking numbers and letters.

    Cache ID in url

    Cache ID in file url

    Open another tab and refresh the page and view the source of the page again. Compare the cache id now with the one you noted before. If it is different then this indicates that a different cache file is being generated on each page load.

    [Note] Note

    If the cache id is not different on the page refresh you could still check it again in a few minutes or few hours, saving the combined file's url so you can see if the cache id changes later.

  3. Find the content that changed

    Now that we have confirmed that some content is changing that is causing the plugin to generate another cache file, we need to find what content that is. To do this we need to view the contents of both combined files and compare them to see what's different, so click on the link of both urls with different cache id's, or copy and paste the links in your browser's address bar to view the contents.

    Use an editor than can 'diff' files to easily find the difference, like Notepad++. Copy and paste both files into the editor and diff them. If you're using Notepad++ it comes with a compare plugin that you can use to diff the files. If you're not seeing it you can install this plugin with Plugin Manager.

    Notepad Compare plugin

    Notepad++ Compare plugin

    When it diffs the files the Editor will display both files together and highlights the parts that are different so it's pretty easy to find the content that was changed.

    Diffed files

    Diff files in NotePad++

  4. Exclude the content that changes on each request

    Scroll through the diff and note the highlighted contents that are different. Use the url of the file that was inserted when you enabled debug to identify which file the changes occurred in or note which inline script contains the changed content. Use the settings on the Exclude Options tab to exclude the file or script that keeps changing.

    Exclude files and scripts

    Exclude the file or scripts that keeps changing

    [Important] Important

    If you're excluding files or scripts when using a setting higher than Average, you break the original execution order of the files on your page. Ensure that the codes you exclude are not dependent on any other files that are combined or use the Average setting

Mentions légales et Politique de confidentialité - Politique concernant les cookies du site - Plan du site

Ouvrir la barre de gestion des cookies

© 2024 XLFormation. Tous droits réservés. Design et conception XLFormation - XLCréation