Skip to content

Instantly share code, notes, and snippets.

@esquinas
Last active January 13, 2019 17:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save esquinas/a005ef679e6731232e8b02e1bf55a479 to your computer and use it in GitHub Desktop.
Save esquinas/a005ef679e6731232e8b02e1bf55a479 to your computer and use it in GitHub Desktop.
Protocolo de actuación para convertir HTTP → HTTPS de un sitio WordPress

Cómo pasar de HTTP a HTTPS un sitio WordPress

Índice de los pasos a seguir

  1. Hacer una copia de seguridad completa del sitio
  2. Activar certificado SSL en nuestro hosting
  3. Activar acceso al Panel de Administración mediante HTTPS
  4. Cambiar nuestro dominio base en el Panel de Administración WP
  5. Cambiar los enlaces de la web
  6. Redirigir todas las direcciones a https mediante .htaccess
  7. Actualizar SEO
  8. Solución de problemas comunes
    1. Advertencias de contenido mixto
    2. Testear el certificado SSL
  9. Enlaces utilizados

1. Hacer una copia de seguridad completa del sitio

2. Activar certificado SSL en nuestro hosting

3. Activar acceso al Panel de Administración mediante HTTPS

  1. Abrir el archivo wp-config.php.
  2. Ir a la línea que pone define('WP_DEBUG'), false); y añadir debajo una línea en blanco.
  3. Añadir estas dos líneas de código:
/*  Use HTTPS on administration panel */
define('FORCE_SSL_ADMIN', true);
  1. Cerrar sesión si tenemos el panel abierto.
  2. Acceder a https://nuestro-dominio.com/wp-login.php en el navegador. Si no nos deja acceder y aparecen avisos de "Sitio no seguro", aseguarse de que el paso "Activar certificado SSL en nuestro hosting" se ha hecho correctamente.

4. Cambiar nuestro dominio base en el Panel de Administración WP

  1. Entrar credenciales de admnistración en "nuestro-dominio.com/wp-login.php".
  2. En el Panel de Administración de WordPress, hacer clic en Ajustes
  3. Reemplazar http://... por https://... en las URL de las 2 casillas "Dirección de WordPress (URL)" y "Dirección del sitio (URL)".

5. Cambiar los enlaces de la web

Todos los enlaces del contenido deben utilizar https, especialmente los enlaces a recursos internos como hojas CSS, archivos JavaScript o fuentes Web.

Para conseguir esto hay varios métodos:

Uno es instalar el plugin Velvet Blues Update URLs y poner en Old URL: "http://nuestro-dominio.com" y en New URL: "https://nuestro-dominio.com".

(Recomendado)
Otra opción es cambiar los enlaces manualmente tratando de que todos sean relativos, del tipo /un-enlace/ en vez de absolutos http://nuuestro-dominio.com/un-enlace/. También hacer una búsqueda en todos los archivos del tema buscando enlaces a páginas externas (En Sublime: Find > Find in Files...). Buscar http://, copiar la URL en el navegador cambiándola a https://www.ejemplo-web-externa.com/ y una vez comprobado que carga la web, reemplazar en nuestros archivos http://www.ejemplo-web-externa.com/ por https://www.ejemplo-web-externa.com/.

6. Redirigir todas las direcciones a https mediante .htaccess

Abrir el archivo .htaccess y cambiar el bloque <IfModule mod_rewrite.c al código siguiente:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Si nos devuelve un error tipo 310 (ERR_TOO_MANY_REDIRECTS) cambiar el bloque del archivo .htaccess (poniendo el dominio correcto en vez de https://nuestro-dominio.com) por este otro código:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://nuestro-dominio.com/$1 [R=301,L,NE]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

7. Actualizar SEO

  1. Abrir la administración del Google Analtics y cambiar la URL por defecto para utilizar https://.

  2. Actualizar de la misma menera todos los enlaces en los perfiles de nuestras redes sociales.

    • Enlaces a nuestra web en campañas de email marketing.
    • No olvidar enlaces a la web en las firmas de correos electrónicos.
    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • ...

8. Solución de problemas comunes

8.1. Advertencias de Contenido Mixto

Cuando en vez de mostrar el candado verde de web segura, los navegadores muestran una especie de advertencia de mixed content o similar, abrir la web Why No Padlock? e introducir nuestra URL en la casilla Secure Address, pasar el Captcha y hacer clic en el botón Test page. Esperar a que entre en cola y elabore nuestro informe con los enlaces que todavía siguen usando http://.

Con esa información repetir el punto 5. Cambiar los enlaces de la web.

8.2. Testear el certificado SSL

  1. Entrar en ssllabs.com/ssltest/ e introducir nuestro-dominio.com en "Hostname:".
  2. Clic en "Submit", esperar.
  3. Si en el informe no aparecen letras A verdes a la derecha, guardar una copia del informe y buscar soluciones a los problemas que indique. En caso de que no sepamos cómo solucionarlo o dependa de nosotros, enviarle a la dirección de soporte técnico de nuestro hosting un enlace de tipo https://www.ssllabs.com/ssltest/analyze.html?d=nuestro-dominio.com para que lo solucionen ellos o nos indiquen qué hay que hacer para solucionarlo.

Enlaces utilizados


Versión 20181029

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment