Passer de l'installation MultiSite de HTTP à HTTPS


11

J'ai installé MultiSite avec l'URL définie en tant que http://example.com , mais maintenant je veux forcer toutes les demandes à passer par HTTPS, donc j'essaie de changer l'URL en https://example.com . J'ai parcouru la base de données et mis à jour toutes les valeurs siteurlet homepour avoir https , mais le site se charge toujours via HTTP, au lieu d'être redirigé vers HTTPS.

Je sais que je pourrais configurer certaines règles htaccess, mais cela est sujet à des erreurs. Dans les installations régulières, WordPress redirigera automatiquement toutes les demandes vers les URL canoniques définies dans les paramètres siteurlet home, donc je suppose que MultiSite le fait aussi.

Réponses:


2

Il existe des plugins pour définir le site sur SSL. Pourquoi ne pas en utiliser un?

Et vous avez un certificat SSL installé et actif?


Tous les plugins que j'ai vus sont de définir des pages spécifiques pour utiliser HTTPS, pas l'ensemble du site. Dans les installations WP normales, la méthode normale pour faire en sorte que l'ensemble du site utilise HTTPS consiste à définir les valeurs siteurlet home. Même s'il y en avait, il y a plusieurs raisons pour lesquelles l'utilisation d'un plugin est une mauvaise idée lorsque vous pouvez simplement définir une valeur de configuration (sécurité, performances, etc.). En outre, je suis assez confiant que peu importe que le certificat SSL soit encore ou non. WordPress ne va pas vérifier cela lorsqu'il détermine ce qu'est l'URL canonique.
Ian Dunn

Vrai et vrai, je me demandais simplement si vous l'aviez déjà configuré ou non (beaucoup de gens ne savent pas que vous avez besoin d'un certificat SSL si vous voulez vraiment utiliser SSL, d'où le Q). Je viens de me rappeler que j'avais un de mes sites en SSL il y a quelque temps (pas seulement des pages spécifiques, mais tout le site comme vous le souhaitez). Je vais chercher le code.
Hiranthi

Hmm .. n'a pas pu trouver le code que j'utilisais à l'époque. Cependant, j'ai trouvé ceci: prosauce.org/blog/2010/08/…
Hiranthi

J'ai installé Better WP Security pour une raison différente, mais il s'avère qu'il a une option pour forcer toutes les demandes de page (avant et arrière) à passer par SSL.
Ian Dunn

1
La meilleure solution serait celle qui n'utilise aucun plugin à mon humble avis. De cette façon, chaque requête n'a pas besoin d'être analysée par le plugin.
captainblack

3

J'ai rencontré le même problème: avec WordPress multisite, il n'y a aucune option ou paramètre qui définit si un domaine de site est HTTP ou HTTPS. Même après avoir remplacé toutes les occurrences de la base de données, un visiteur du site peut toujours entrer et naviguer sur le site en HTTP, sans être redirigé vers HTTPS.

La solution simple suivante a fonctionné pour moi: j'ai ajouté cette mod_rewriterègle à mon fichier .htaccess, juste avant les règles de réécriture spécifiques à WordPress.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Étant donné que cette règle ne définit pas un domaine spécifique, elle est parfaite pour les besoins de WordPress multisite.

J'ai trouvé cette règle dans le fil suivant: /programming/4398951/force-ssl-https-using-htaccess-and-mod-rewrite


Ce type de solution est excellent pour un multisite homogénéisé en protocole. Une fois que vous souhaitez avoir un mélange de sites SSL et non SSL dans un réseau multisite, les choses se compliquent. Très compliqué.
CC

En effet, mon contexte était un réseau où je passais tous les sites en SSL en même temps.
Manu

Le mettre avant les règles spécifiques à WordPress l'a résolu pour moi. Merci - cette solution m'a pris du temps à trouver.
bastelflp
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.