Base de conocimientos
1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Forzar el uso de HTTPS (SSL) en la URL que muestra el navegador web
Esta guía explica cómo redirigir a todos los visitantes de un sitio web a su versión https segura (SSL) en el Alojamiento Web de Infomaniak.
Introducción
- En principio, esta redirección es automática con una configuración e instalación estándar.
Redirección manual mediante el archivo .htaccess
Requisitos previos
- Disponer de un certificado SSL válido y funcional para el sitio web de Infomaniak.
A continuación, modifique o añada las siguientes 3 líneas al archivo .htaccess del sitio web correspondiente para que todos sus visitantes accedan automáticamente a su versión https segura:
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://domain.xyz/$1 [R=301,L]Reemplace domain.xyz por su nombre de dominio con la extensión adecuada (.com, .fr, .ch, etc.).
Reemplace la segunda línea del código anterior por RewriteCond %{HTTP:X-Forwarded-Proto} !https en caso de que surja algún problema.
Con un CMS
La mayoría de las aplicaciones web, como WordPress y Joomla, tienen extensiones o complementos que redirigen automáticamente a los visitantes de un sitio a su versión https segura.
WordPress
Si utiliza un sistema de gestión de contenidos (CMS) como WordPress para crear su sitio, se recomienda instalar una extensión para realizar esta redirección:
- Realice una copia de seguridad de los archivos y la base de datos del sitio por precaución.
- Instale la extensión Really Simple SSL o similar desde la consola de WordPress y actívela.
- Los visitantes ahora se redirigirán automáticamente a la versión https del sitio.
Joomla
Reemplace domain.xyz por su nombre de dominio con la extensión adecuada (.com, .fr, .ch, etc.).
Busque la línea
var $live_site ='';en el archivo de configuración de Joomla (
configuration.php) en el servidor.Reemplace con
var $live_site = 'https://www.domain.xyz';Agregue tres líneas en su archivo
.htaccessen el servidor:RewriteEngine On RewriteCond %{HTTPS} OFF RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}- Abra el panel de administración de Joomla en "Sistema - Configuración".
- Haga clic en la pestaña "Servidor" y, en "Forzar SSL", elija "Administración y sitio".
- Guarde los cambios y los visitantes ahora se redirigirán automáticamente a la versión https del sitio.
Prestashop
- Acceda a la configuración general en el panel de administración de Prestashop para activar el SSL:
- < v1.7, haga clic en "Preferencias" y luego en "Generales"
- > v1.7, haga clic en "Configuración de la tienda" y luego en "General"
- Active el interruptor (toggle switch) "Activar SSL" en "SÍ".
- Haga clic en "Guardar".
- En el mismo lugar, active el interruptor (toggle switch) "Activar SSL en todo el sitio" en "SÍ".
- Haga clic en "Guardar".
En caso de que no aparezca un candado de seguridad en el navegador o se muestre una advertencia, debe verificar la plantilla o los módulos, ya que a veces estos no son completamente compatibles con SSL. Su Prestashop entonces cargará elementos (imágenes, archivos .css o .js, fuentes...) en "http" cuando deberían cargarse en "https".
Drupal
Consulte este artículo (en inglés) que explica cómo migrar un sitio Drupal de http a https.
Soluciones alternativas
Reemplace domain.xyz con su nombre de dominio y la extensión adecuada (.com, .fr, .ch, etc.).
En su archivo .htaccess, para forzar que la URL del sitio sea https://, pero sin www:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteRule (.*) https://domain.xyz/$1 [R=301,L]En caso de un bucle de redirección, adapte el código anterior de la siguiente manera:
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteRule (.*) https://domain.xyz/$1 [R=301,L]En su archivo .htaccess, para forzar la redirección con www:
con los subdominios:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule (.*) https://www.domain.xyz/$1 [R=301,L]En caso de un bucle de redirección, adapte el código anterior de la siguiente manera:
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule (.*) https://www.domain.xyz/$1 [R=301,L]y sin los subdominios:
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^domain.xyz [NC]
RewriteRule (.*) https://www.domain.xyz/$1 [R=301,L]En caso de un bucle de redirección, adapte el código anterior de la siguiente manera:
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} ^domain.xyz [NC]
RewriteRule (.*) https://www.domain.xyz/$1 [R=301,L]
Errores comunes después de una redirección a https
Para solucionar los problemas comunes que pueden surgir después de redirigir su sitio web a su versión https segura, consulte esta otra guía.
Enlace a esta FAQ: https://faq.infomaniak.com/1961
¿Le ha sido útil esta FAQ?