Cambiar la instalación de MultiSite de HTTP a HTTPS

11

Instalé MultiSite con la URL configurada como http://example.com , pero ahora quiero forzar que todas las solicitudes pasen por HTTPS, así que estoy tratando de cambiar la URL para que sea https://example.com . Revisé la base de datos y actualicé todos los valores siteurly homepara tener https , pero el sitio aún se carga a través de HTTP, en lugar de ser redirigido a HTTPS.

Sé que podría configurar algunas reglas de htaccess, pero eso es propenso a errores. En instalaciones regulares, WordPress redirigirá automáticamente todas las solicitudes a las URL canónicas definidas en la configuración siteurly home, por lo que supongo que MultiSite también lo hace.

Ian Dunn
fuente

Respuestas:

2

Hay complementos para configurar el sitio en SSL. ¿Por qué no usar uno de ellos?

¿Y tiene un certificado SSL instalado y activo?

Hiranthi
fuente
Todos los complementos que he visto son para configurar páginas específicas para usar HTTPS, no todo el sitio. En instalaciones regulares de WP, el método normal para hacer que todo el sitio use HTTPS es establecer los valores siteurly home. Incluso si hubiera algunos disponibles, hay varias razones por las que usar un complemento es una mala idea cuando solo puede establecer un valor de configuración (seguridad, rendimiento, etc.). Además, estoy bastante seguro de que no importa si el certificado SSL es o no. WordPress no comprobará eso cuando determine cuál es la URL canónica.
Ian Dunn
Verdadero y verdadero, me preguntaba si ya lo tenía configurado o no (muchas personas no saben que necesita un certificado SSL si realmente desea usar SSL, de ahí la Q). Acabo de recordar que tenía un sitio mío en SSL hace un tiempo (no solo páginas específicas, sino todo el sitio como lo deseas). Buscaré el código.
Hiranthi
Hmm ... no pude encontrar el código que usé en ese entonces. Sin embargo, encontré esto: prosauce.org/blog/2010/08/…
Hiranthi
Instalé Better WP Security por un motivo diferente, pero resulta que tiene una opción para forzar que todas las solicitudes de página (frontal y posterior) pasen por SSL.
Ian Dunn
La mejor solución sería la que no utiliza el plugin en mi humilde opinión. De esa manera, cada solicitud no tiene que ser analizada por el complemento.
captainblack
3

Encontré el mismo problema: con WordPress multisitio, no hay una opción o configuración que defina si el dominio de un sitio es HTTP o HTTPS. Incluso después de reemplazar todas las ocurrencias en la base de datos, un visitante del sitio aún puede ingresar y navegar por el sitio en HTTP, sin ser redirigido a HTTPS.

La siguiente solución simple funcionó para mí: agregué esta mod_rewriteregla a mi archivo .htaccess, justo antes de las reglas específicas de reescritura de WordPress.

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

Dado que esta regla no define un dominio específico, es perfecta para las necesidades de WordPress multisitio.

Encontré esta regla en el siguiente hilo: /programming/4398951/force-ssl-https-using-htaccess-and-mod-rewrite

Manu
fuente
Este tipo de solución es excelente para un multisitio que es un protocolo homogeneizado. Una vez que desea tener una combinación de sitios SSL y no SSL en una red multisitio, las cosas se complican. Muy complicado.
CC
De hecho, mi contexto era una red donde cambié todos los sitios a SSL al mismo tiempo.
Manu
Poniéndolo antes de las reglas específicas de WordPress lo resolvió para mí. Gracias, esta solución me llevó un tiempo encontrarla.
bastelflp