Redirigir http a https con htaccess rewrite

Aviso

Los ejemplos de los siguientes enlaces son proporcionados por cortesía – Clouding.io no configurará rewrite rules para sitios web individuales de sus clientes.

Instrucciones generales

  1. Crea un archivo de texto plano, con nombre .htaccess, o añade las líneas de código del ejemplo que se adapte más a tus necesidades en la parte superior de tu/s archivo/s .htaccess.
  2. Agrega las líneas del ejemplo apropiado para tus necesidades en el archivo .htaccess. Ten en cuenta que deberás reemplazar el texto de los ejemplos con tu propia información. Es decir, remplazar dominio.com con tu propio nombre de dominio, directorio1 con el nombre de tu propio directorio, archivo.html con tu propio nombre de archivo, etc.
  3. Use tu cliente FTP para subir el archivo .htaccess al directorio, o sub-directorio, del dominio correspondiente. Si quieres que el archivo se cargue al entrar en tu dominio , por ejemplo, dominio.com, deberías cargar el archivo en la raíz de tu dominio, la cual suele ser:
    • /var/www/vhosts/dominio.com/httpdocs – En el caso de un servidor con Plesk
    • dominio.com/httpdocs – En el caso de un alojamiento compartido

Una vez que hayas cargado el archivo, la regla de reescritura (rewrite rule) debe funcionar inmediatamente.

Aviso

Algunos Sistemas de Gestión de Contenidos (Content Management Systems o CMS), como WordPress, por ejemplo, sobrescriben los archivos .htaccess con su propia configuración. En ese caso, puede que tengas que buscar la manera de hacer estos cambios desde el panel del mismo CMS.

Ejemplo de archivo .htaccess

El siguiente archivo .htaccess de ejemplo, redirigirá http://dominio.com/https://dominio.com/. También funcionará si un archivo individual se solicita, como por ejemplo, http://dominio.com/archivo.html:

RewriteEngine On

RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://www.dominio.com/$1 [R,L]

Probar los ejemplos

Simplemente, visita http://dominio.com en tu navegador, y deberías ver que se muestra la misma página, pero la dirección ha cambiado a https://www.dominio.com.

También, se convertirá cualquier URL tipo: http://dominio.com/archivo.html en https://dominio.com/archivo.html.

Explicación del código

  • Options +FollowSymLinks – es una directiva de Apache, requisito previo para mod_rewrite.
  • RewriteEngine On – habilita mod_rewrite.
  • RewriteCond %{SERVER_PORT} 80 – sirve para indicar que todas las peticiones que se realicen al puerto 80 (puerto por defecto de Apache para servicio web) quieres que vayan a través de la regla especificada.
  • RewriteRule – define una regla particular.
    • Dentro de la regla de reescritura, la primera cadena de caracteres después de RewriteRule, define lo que la URL original parece.
    • La segunda cadena después de RewriteRule define la nueva URL.
      • $1 – Este caracter especial, sustituye (o indica) la parte entre paréntesis, especificada en la primera cadena. Básicamente, lo que hace es asegurar que las sub-páginas redireccionan a la misma sub-página y no a la página principal. Puedes omitirlo para redirigir a la página principal. (Si no tienes el mismo contenido en el nuevo directorio que había en el antiguo directorio, deja esta expresión regular.)

      Información adicional

      Puedes encontrar más detalles sobre los caracteres especiales, conocidos como expresiones regulares, en el artículo

      Utilizar las rewrite rules en .htaccess

  • [R,L] – Esta opción, realiza una redirección, y también deshabilita que las reglas de reescritura que estén escritas después afecten a la dirección URL (una buena idea para añadir después de la última rewrite rule).

Para comentar sobre este artículo, rellena el formulario. Los campos marcados con un asterisco (*) son obligatorios.


*

Una respuesta
  1. Comentario (Publicado por daniel)

    genial gracias por el tuto 😛

    Responder