J'ai installé MultiSite avec l'URL définie comme http://example.com , mais je souhaite maintenant forcer toutes les demandes à passer par HTTPS. J'essaie donc de modifier l'URL afin qu'elle soit https: // example.com . J'ai parcouru la base de données et mis à jour toutes les valeurs siteurl
et home
afin qu'elles aient 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 c'est sujet aux erreurs. Dans les installations classiques, WordPress redirige automatiquement toutes les demandes vers les URL canoniques définies dans les paramètres siteurl
et home
. Je suppose donc que MultiSite en fait de même.
Il existe des plugins pour définir le site sur SSL. Pourquoi ne pas utiliser l'un d'entre eux?
Et vous avez un certificat SSL installé et actif?
J'ai rencontré le même problème: avec WordPress multisite, aucune option ou paramètre ne permet de définir 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 règle mod_rewrite
à 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]
Comme cette règle ne définit pas un domaine spécifique, elle convient parfaitement aux besoins de WordPress multisite.
J'ai trouvé cette règle dans le fil suivant: https://stackoverflow.com/questions/4398951/force-ssl-https-using-htaccess-and-mod-rewrite