Cambiar instalación MultiSite de HTTP a HTTPS

10 abr 2012, 03:20:20
Vistas: 18.2K
Votos: 11

Instalé MultiSite con la URL configurada como http://ejemplo.com, pero ahora quiero forzar todas las solicitudes a que vayan por HTTPS, así que estoy intentando cambiar la URL a https://ejemplo.com. He revisado la base de datos y actualizado todos los valores de siteurl y home para que tengan https, pero el sitio sigue cargando sobre HTTP, en lugar de redirigir a HTTPS.

Sé que podría configurar algunas reglas en el htaccess, pero eso es propenso a errores. En instalaciones normales WordPress redirige automáticamente todas las solicitudes a las URLs canónicas definidas en los ajustes siteurl y home, así que asumo que MultiSite también lo hace.

0
Todas las respuestas a la pregunta 3
3

Me encontré con el mismo problema: en WordPress multisite, 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 en HTTP, sin ser redirigido a HTTPS.

La siguiente solución simple funcionó para mí: agregué esta regla de mod_rewrite a mi archivo .htaccess, justo antes de las reglas de reescritura específicas 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 multisite.

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

3 ago 2016 13:14:09
Comentarios

Este tipo de solución es excelente para un multisitio que tiene un protocolo homogeneizado. Una vez que deseas tener una mezcla de sitios SSL y no SSL en una red multisitio, las cosas se complican. Mucho.

C C C C
9 dic 2016 04:35:14

Efectivamente, mi contexto era una red donde cambié todos los sitios a SSL al mismo tiempo.

Manu Manu
10 dic 2016 08:45:38

Colocarlo antes de las reglas específicas de WordPress resolvió el problema para mí. Gracias - esta solución me tomó un tiempo encontrarla.

bastelflp bastelflp
5 mar 2018 19:28:56
6

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

¿Y tienes un certificado SSL instalado y activo?

10 abr 2012 09:45:00
Comentarios

Todos los plugins 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 siteurl y home. Incluso si hubiera algunos disponibles, hay varias razones por las que usar un plugin es una mala idea cuando puedes simplemente establecer un valor de configuración (seguridad, rendimiento, etc.). Además, estoy bastante seguro de que no importa si el certificado SSL está listo o no. WordPress no va a verificar eso cuando determine cuál es la URL canónica.

Ian Dunn Ian Dunn
10 abr 2012 18:59:05

Cierto y cierto, solo me preguntaba si ya lo tenías configurado o no (mucha gente no sabe que necesitas un certificado SSL si realmente quieres usar SSL, de ahí la pregunta). 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 tú lo quieres). Voy a buscar el código.

Hiranthi Hiranthi
18 abr 2012 15:24:53

Mmm... no pude encontrar el código que usé en ese entonces. Sin embargo, encontré esto: http://prosauce.org/blog/2010/08/enable-complete-support-for-ssl-on-wordpress/

Hiranthi Hiranthi
18 abr 2012 15:32:58

Instalé Better WP Security por una razón diferente, pero resulta que tiene una opción para forzar todas las solicitudes de página (frontales y traseras) a pasar por SSL.

Ian Dunn Ian Dunn
18 abr 2012 17:54:29

La mejor solución sería la que no utiliza ningún plugin en mi opinión. De esa manera, cada solicitud no tiene que ser analizada por el plugin.

captainblack captainblack
21 feb 2018 03:10:50

También tengo un sitio web de WordPress multisitio. Me gustaría preguntar si existe algún método para cambiar nuestro sitio web de HTTP a HTTPS sin usar un plugin.

Jornes Jornes
17 abr 2020 20:06:37
Mostrar los 1 comentarios restantes
1

Cambié las reglas específicas para un host. Pero ahora redirige todos los demás blogs a este. Cambié "%{HTTP_HOST}" a un dominio específico y mantuve la parte "%{REQUEST_URI}".

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

En mi opinión, añadir líneas adicionales de RewriteRule para otros dominios podría resolver el problema, pero me pregunto si hay alguna forma más sencilla de hacerlo. ¿Porque cada vez que se crea un sitio de blog necesitamos modificar el archivo .htaccess???

Edición: Resolví el problema cambiando el RewriteRule así:

RewriteRule http://gezentiyiz.biz%{REQUEST_URI} https://gezentiyiz.biz%{REQUEST_URI} [L,R=301]
30 mar 2022 16:20:10
Comentarios

"Cambié %{HTTP_HOST} por un dominio específico" - ¿Pero por qué? Esto suena como una pregunta diferente, más que una "respuesta". ¿Estás intentando ser selectivo y redirigir solo ciertos sitios a HTTPS?? "Resolví el problema cambiando la RewriteRule así" - ¡Excepto que esa regla no tiene sentido y no haría nada! Para hacer que la regla dependa del nombre del host, necesitas verificar el encabezado HTTP Host solicitado (variable del servidor Apache HTTP_HOST) en una condición separada (RewriteCond directive).

MrWhite MrWhite
20 abr 2023 00:41:39