[Résolu] Problème préchargement admin-ajax par sitemap avec WP Rockett

  • WordPress :4.9.8
  • Statut : résolu
10 sujets de 1 à 10 (sur un total de 10)
  • Auteur
    Messages
  • #2213616
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bonjour à toutes et à tous,

    Ma configuration WP actuelle :
    – Version de WordPress : 4.9.8
    – Version de PHP/MySQL : 7.2.10 / 10.2.17
    – Thème utilisé : Broussaille theme
    – Extensions en place : Akismet Anti-Spam (4.0.8), Broussaille fonctions (0.1), Contact Form 7 (5.0.4), Email Templates (1.2.2.3), Enhanced Media Library (2.7.2), Forum_wordpress_fr (4.1), Imagify (1.8.2), Simple Page Ordering (2.3.2), TinyMCE Advanced (4.8.0), WooCommerce (3.4.5), Woo Related Products (3.3.2), WP Rocket (3.1.4), Yoast SEO (8.3)
    – Adresse du site : https://broussaillestore.fr
    – Nom de l’hébergeur : Apache

    Premièrement désolé si ce post fait doublon mais il semble que mon premier envoi n’ait pas fonctionné.

    Problème(s) rencontré(s) :

    Mon cPanel me transmet ces messages d’erreur en exemple ci-dessous.

    <i>Mon Sep 24 18:25:37.340344 2018] [access_compat:error] [pid 20420:tid 139887188711168] [client 109.234.162.66:0] AH01797: client denied by server configuration: /home/……/public_html/wp-<wbr />admin/admin-ajax.php, referer: https://broussaillestore.fr/<wbr />wp-admin/admin-ajax.php?<wbr />action=rocket_sitemap_preload&<wbr />nonce=20dfa22fc5</i>

    <i>[Mon Sep 24 18:25:17.167555 2018] [access_compat:error] [pid 18773:tid 139887037642496] [client 109.234.162.66:0] AH01797: client denied by server configuration: /home/……/public_html/wp-<wbr />admin/admin-ajax.php, referer: https://broussaillestore.fr/<wbr />wp-admin/admin-ajax.php?<wbr />action=rocket_sitemap_preload&<wbr />nonce=20dfa22fc5</i>

    <i>[Mon Sep 24 17:55:53.551977 2018] [access_compat:error] [pid 2185:tid 139887087998720] [client 109.234.162.66:0] AH01797: client denied by server configuration: /home/……/public_html/wp-<wbr />admin/admin-ajax.php, referer: https://broussaillestore.fr/<wbr />wp-admin/admin-ajax.php?<wbr />action=rocket_sitemap_preload&<wbr />nonce=20dfa22fc5</i>

    <i>[Mon Sep 24 17:46:10.922809 2018] [access_compat:error] [pid 9804:tid 139887180318464] [client 109.234.162.66:0] AH01797: client denied by server configuration: /home/……/public_html/wp-<wbr />admin/admin-ajax.php, referer: https://broussaillestore.fr/<wbr />wp-admin/admin-ajax.php?</i><i>action<wbr />=rocket_sitemap_preload&nonce=<wbr />20dfa22fc5</i>

     

    Après contact pris avec mon hébergeur (o2switch), le support m’affirme que le blocage ne vient pas de chez eux. WP Rockett me conseille de vérifier mon .htaccess, afin de voir si une règle de sécurité ne bloquerait pas. C’est la où le bat blesse, je ne maitrise pas suffisamment le code pour savoir quelle règle pourrait poser problème. Pour info mon .htaccess est quasiment identique à celui « préconisé » par WPmarmite.

    Il aurait aussi pu s’agir d’un module de sécurité mais ce n’est pas le cas.

    #2213643
    Li-An
    Modérateur
    Maître WordPress
    21909 contributions

    Bonjour, la meilleure chose à faire c’est de virer les lignes que vous avez ajouté. Les conseils de WPMarmite sont généralistes et peuvent entrer en conflit avec des configurations particulières.

    #2213687
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bonsoir Li-An, je suis un peu sceptique, il y a quand même quelques conseils judicieux dans ce tuto de WP marmite concernant la sécurité.

    Alors tout virer, bien sur, mais c’est la solution « facile », j’aurais préféré trouver la raison et n’agir qu’en conséquence.

    Merci cependant pour le retour.

    #2264875
    Flobogo
    Modérateur
    Maître WordPress
    15491 contributions

    Bonjour,

    Vous pouvez conserver une copie du .htaccess actuel à télécharger sur votre ordi. Puis vous supprimez les lignes supplémentaires pour revenir au .htaccess de base, et vous vérifiez si tout fonctionne.

    • Si oui, vous pourrez les rajouter une par une (ou par groupe de lignes de fonctions, bien sûr), tant que vous ne vous retrouvez pas à nouveau bloqué. (même méthode que dans le cas d’une extension défectueuse, en quelque sorte : on les réactive l’une après l’autre)
    • Si cela ne change rien, c’est que le problème ne vient pas .htaccess … et vous pourrez remettre celui que vous avez sauvegardé … mais il faudra trouver d’où vient le problème !
    #2265003
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bonjour Flobogo, en fait le problème est résolu et j’allais lui apporter une réponse, mais je suis arrivé trop tard….

    En fait comme je le décrivais dans cette discussion, j’ai testé la solution donné sur ce site (site de Daniel Farnier) pour permettre aux extensions de pouvoir accéder au « wp-admin/admin/ajax », et ça fonctionne. Il fallait juste être un peu patient (et aussi vider tous les caches (ordi et WP Rocket) pour que le changement soit pris en compte (et je me suis aussi déconnecté de mon admin er reconnecté, après deux essais sur le module de santé, c’était Ok. Mais entre nous ce module connait quelques bugs : il me signale, sur un sous-domaine, que je dois installer un thème par défaut, c’est pourtant le cas (Twenty Seventeen) mais il ne le prend pas en compte…ceci-dit ce n’est pas très grave.

    Bon je redonne le code au cas où quelqu’un passerait par là (et je vais aussi compléter ma réponse sur l’autre discussion) :

    # Autoriser les accès à wp-admin/admin-ajax.php
    <Files admin-ajax.php>
        Order allow,deny
        Allow from all
        Satisfy any
    </Files>

    Je précise que j’ai gardé un .htacces dans mon wp-admin pour empêcher les connexions non souhaitées.

    Bonne fin de journée.

    #2265009
    Li-An
    Modérateur
    Maître WordPress
    21909 contributions

    C’est quand même super bizarre ce que vous nous racontez. La page citée donne d’excellents conseils de protection de WP et donc l’accès à l’Ajax vient du fait que les directives bloquent cet accès. Un WP sans ses directives ne devrait pas rencontrer ce problème. Ça a donc été bloqué quelque part.

    #2265074
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bonjour Li-An, effectivement j’avais inséré un snippet bloquant les adresses IP dans mon .htaccess racine, ainsi que dans celui de mon wp-admin. J’ai donc enlever ces règles dans mon .htaccess racine.

    Par contre j’ai laissé une règle de blocage dans le .htaccess wp-admin.

    Ce qui m’amène une autre question : comment ce fait-il que je puisse me connecter à l’admin de mon site avec une autre adresse IP ? (j’ai fait les test hier soir chez un ami qui vient de déménager et dont je ne connais pas l’adresse IP, je n’ai donc pas pu lui accorder l’accès et pourtant je me suis connecté sans souci).

    Est-ce que « wp-admin » & « wp-admin/ajax.php » ne sont pas différents ?

    Voici le code de mon .htacces dans le wp-admin :

    # Bloquer l'accès à l'admin (sauf IP listées)
    <Files wp-login.php>
    order deny,allow
    deny from all
    allow from XXX.XXX.XXX
    allow from XXX.XXX.XXX
    allow from XXX.XXX.XXX
    </Files>
    # Autoriser les accès à wp-admin/admin-ajax.php
    <Files admin-ajax.php>
        Order allow,deny
        Allow from all
        Satisfy any
    </Files>
    .htaccess du wp-admin

    #2265075
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bon, une bourde, en fait je bloque le wp-login.php. Je viens de m’en rendre compte en relisant mon message (un peu tard…).

    Je viens de relire « mon guide » du fichier .htaccess et il faut que je le relise encore une fois…Je suis un peu lent….

    Bonne journée.

    #2265087
    Li-An
    Modérateur
    Maître WordPress
    21909 contributions

    Si je peux me permettre : plutôt que d’empiler des bouts de code pour protéger votre WP, installez une extensions de sécurité qui fera un boulot plus global. Éventuellement, contentez vous de restrictions IP sur wp-login.php.

    Toutes ces règles sont bien jolies mais elles ne corrigent pas des failles : elles rajoutent des couches de protection pour rassurer les paranos. C’est un peu comme si vous rangiez votre carte bancaire dans un porte feuilles à code. Ça sera encore plus sécurisé mais ça ajoute de la complexité dont l’intérêt n’est pas évident. Personnellement, je protège wp-config.php qui est quand même le fichier le plus important, j’empêche le listing des dossiers.

    #2265249
    Broussaille
    Participant
    Chevalier WordPress
    169 contributions

    Bonjour Li-An,

    effectivement je pense installer une extension de sécurité. J’avais jusqu’alors préféré ces « bouts de code », pour ne pas surcharger mon WP avec des extensions, mais vu le « bazar », je vais oublié tout ça. Par contre quel mode utilisez vous pour empêcher le listing de dossier du wp-config.php ?

    Pour l’extension de sécurité, je pense que je vais aller me renseigner sur « L’écho des plugins ».

    Bonne journée.

10 sujets de 1 à 10 (sur un total de 10)
  • Vous devez être connecté pour répondre à ce sujet.