web-dev-qa-db-fra.com

Verrouillé de l'administrateur du site WordPress après avoir activé Forcer SSL sur WordPress Https (SSL)

Je suis dans une situation terrible. J'ai été bloqué sur Site Admin et les solutions proposées par l'équipe de plug-ins dans leur documentation ne fonctionnent pas. J'ai essayé les deux méthodes en utilisant Webmatrix. Je dois lancer mon site vendredi et je ne sais pas quoi faire.

Voici ce qu'ils ont suggéré:

Comment réinitialiser les paramètres du plugin?
Allez à /wp-content/plugins/wordpress-https/wordpress-https.php et décommentez (supprimez les deux barres obliques avant avant) la ligne ci-dessous, ou allez à votre fichier wp-config.php et ajoutez cette ligne. Appuyez sur n’importe quelle page de votre site, puis supprimez-la ou commentez-la à nouveau.

define('WPHTTPS_RESET', true);

Les paramètres ne seront pas enregistrés!

Avez-vous réinitialisé le plug-in en suivant les étapes ci-dessus et oublié de commenter la ligne ou de la supprimer de wp-config.php?

2
Lindsay

Commencez par renommer le dossier wp-content/plugins/wordpress-https en wp-content/plugins/wordpress-https-OFF afin que WordPress ne puisse pas le trouver pour l'exécuter.

Deuxièmement, ajoutez les lignes suivantes à votre fichier wp-config.php, en remplaçant le nom de domaine par votre nom de domaine:

define( 'WP_SITEURL', 'http://example.com/' );
define( 'WP_HOME', 'http://example.com/' );
4
webaware

J'ai essayé toutes les solutions pour réinitialiser le plugin mais aucune ne fonctionnait, enfin j'ai trouvé la solution: supprimer les données correspondantes de la base de données.

Votre option est d'aller dans la base de données et d'exécuter la requête ci-dessous:

DELETE
FROM wp_options
WHERE option_name LIKE 'wordpress-https%'
1
user3082282

En fonction de la configuration de votre site et de votre navigateur, la résolution de ce problème peut prendre plusieurs étapes. Les éléments suivants devraient résoudre bon nombre de ces types de problèmes.

Étape 1: Désactiver le plugin WordPress-HTTPS

Comme vous ne pouvez pas vous connecter à Admin, vous devez le faire derrière le dos de WordPress. Le moyen le plus simple et brutal de le faire est de renommer le dossier du plugin.

  1. En utilisant FTP, une invite du shell ou le gestionnaire de fichiers de votre hôte Web (par exemple, celui disponible via cPanel), accédez à wp-content\plugins\.
  2. Renommez le plugin dossierwordpress-https en wordpress-https1

Peu importe ce que vous le renommez. WordPress sait simplement qu'un plugin appelé "WordPress-HTTPS" est actif et qu'il est stocké dans un dossier appelé "wordpress-https". En renommant le dossier, nous le cachons de WordPress afin que le code du plugin ne s'exécute pas.

Un moyen plus élégant et peut-être plus sûr de le faire est d'utiliser WP-CLI . C'est une interface de ligne de commande qui vous permet de réaliser la plupart des fonctions administratives de WordPress à partir du shell Linux/Unix. Mais tout le monde n’a pas accès à Shell (par exemple via SHH), et tous les hôtes en tant que WP-CLI ne sont pas installés. S'il est installé:

  1. Entrez la commande wp plugin list pour confirmer que le plug-in est présent et actif.
  2. Entrez la commande wp plugin deactivate wordpress-https

Étape 2: effacez tout le cache

En théorie, WordPress-HTTPS est inactif maintenant et ne causera pas de problèmes de connexion. Toutefois, la mise en cache de certains navigateurs et hôtes Web est activée, ce qui permet de se souvenir de la redirection effectuée précédemment.

Pour vous assurer que vous obtenez vraiment un accès actuel à 100% au site:

  1. Si des plugins de mise en cache sont activés (par exemple, W3 Total Cache), désactivez-les. Certains peuvent être désactivés via le panneau de configuration de votre hôte Web (par exemple, le SuperCacher de SiteGround), et d'autres que vous devrez désactiver comme indiqué ci-dessus.
  2. Si votre hôte Web met en cache en dehors de WordPress, désactivez-le. Cela peut normalement être fait via le panneau de contrôle de votre hébergeur.
  3. Si un réseau de diffusion de contenu est activé (par exemple, CloudFlare), désactivez-le.
  4. Effacez le cache et les cookies de votre navigateur.
  5. Arrêtez et redémarrez votre navigateur.

Étape 3: Connectez-vous

Avec un peu de chance, vous pouvez maintenant.

Étape 4: Si le problème persiste, réglez temporairement votre site sur http

Les paramètres de votre site indiquent probablement que vous devez utiliser https pour les URL du site et de la maison. Si votre problème vient vraiment du paramètre "force admin", ce n'est probablement pas un problème. Mais pour finir, vous pouvez essayer de désactiver cette option pour l’ensemble du site.

Ces paramètres d'URL sont définis sur la page Paramètres> Général, que vous ne pouvez pas atteindre pour l'instant. Mais ils sont stockés dans la table WordPress wp_options. Vous pouvez les remplacer de deux manières:

  • Comme décrit dans la réponse de Webaware, définissez quelques constantes dans wp-config.php, n'oubliez pas de supprimer ces constantes une fois que vous avez terminé.
  • Modifiez la base de données directement avec phpMyAdmin ou votre propre code PHP. Ces deux paramètres sont "siteurl" et "home" et sont les deux premiers de la table wp_options. Changez-les pour utiliser http au lieu de https.

Étape 4: Supprimez les paramètres à l'origine du verrouillage

Ignorez cette étape si vous envisagez de ne plus utiliser WordPress HTTPS. Dans ce cas, vous pouvez simplement supprimer le dossier wordpress-https1.

Mais c’est un outil très utile lorsque SSL est activé, vous pouvez donc le réactiver une fois que vous pouvez vous connecter. Si vous le faites maintenant, vous aurez probablement de nouveau des problèmes de connexion.

Nous devons supprimer les paramètres de WordPress-HTTPS du tableau des options de WordPress. C'est essentiellement comme si vous l'installiez à partir de zéro. Il y a deux façons de faire ça.

Option 1: les supprimer directement de la base de données

Tous les paramètres se trouvent dans votre base de données WordPress, dans la table wp_options, et commencent tous par "wordpress-https". Supprimer ces lignes de la table réinitialise WordPress-HTTPS. Il devrait maintenant être sûr de réactiver.

Option 2: Utiliser le drapeau "reset" du plugin

Comme vous l'avez décrit dans votre question, vous pouvez définir la constante WPHTTPS_RESET. La prochaine fois que WordPress HTTPS s'exécutera, il verra cet indicateur et effacera ses paramètres. Il est possible que cela ne fonctionne pas pour vous en raison du problème de mise en cache mentionné ci-dessus.

0
Andy Giesler