Ir directamente al contenido

Ajustes de cookies

Elija por tipo qué cookies permite. Puede cambiar su elección en cualquier momento en Ajustes de cookies, al pie de cada página. Declaración de privacidad

Necesarias

Siempre activadas

Necesarias para iniciar sesión, conservar su carrito y recordar sus preferencias. Siempre están activadas.

¿Qué cookies?
  • weboke_sessie, weboke_klant, weboke_remember: su sesión y mantener la sesión iniciada
  • weboke_basket: su carrito
  • wkBtwIncl: mostrar los precios con o sin IVA
  • wok_cookies: su elección de cookies, 12 meses

Mide qué anuncio lleva a una visita o a un pedido, para no pagar por anuncios que no sirven de nada.

¿Qué cookies?
  • Google Ads a través de Google Tag Manager (_gcl_au, _gcl_aw), hasta 90 días
  • OpenAI Ads, anuncios en ChatGPT
  • wok_aff: a través de qué socio llegó a nosotros (programa de afiliados), 60 días

4,6

País e idioma

Cada país tiene su propio sitio, con los precios y el IVA de ese país.

Ver

Módulo 3 · 3.1

https y el certificado

Módulo 3: Dirección, https y usuarios · Tiempo de lectura: 8 minutos

Objetivo de aprendizaje: Después de esta lección podrá configurar un sitio WordPress completamente en https y sabrá qué hacen la dirección de WordPress y la dirección del sitio.

Conceptos clave: TLS, certificado, Let's Encrypt, renovación automática, dirección de WordPress (siteurl), dirección del sitio (home), WP_HOME y WP_SITEURL, HSTS, quedarse bloqueado fuera

Qué hace https

Con https todo entre el navegador y el servidor va cifrado: contraseñas, formularios, cookies, también las páginas normales. Sin https, cualquiera en la misma red (una wifi pública, un router comprometido) puede leer el tráfico e incluso modificar la página. Los navegadores muestran un sitio sin https como "no seguro" y algunas funciones (como la ubicación o la cámara) solo funcionan con https.

El cifrado se llama TLS. Para demostrar que el navegador realmente habla con example.com y no con un intermediario, el servidor tiene un certificado: una prueba digital, firmada por un emisor en el que confían los navegadores. El certificado indica los nombres para los que es válido y hasta cuándo.

Certificados gratuitos y renovación

Let's Encrypt emite certificados gratuitos. Casi todos los proveedores de alojamiento los solicitan automáticamente y también los renuevan automáticamente. Un certificado de Let's Encrypt es válido ahora durante 90 días, y Let's Encrypt ha anunciado que reducirá ese periodo de validez poco a poco hasta 45 días. Renovarlo manualmente, por tanto, no es una opción: debe hacerse de forma automática.

Un certificado de pago no cifra mejor. La diferencia está en el control adicional de la organización (y a veces una garantía). Para la mayoría de los sitios, un certificado gratuito es perfectamente válido.

A qué debe prestar atención:

  • El certificado debe cubrir todos los nombres que un visitante pueda escribir: example.com y www.example.com. También el nombre que solo redirige, porque el navegador comprueba el certificado antes de seguir la redirección.
  • La renovación automática solo funciona si el DNS apunta a su servidor. Si ha cambiado el DNS o ha puesto un proxy delante (como Cloudflare), compruebe que la renovación sigue funcionando.
  • Un registro CAA en el DNS puede determinar qué emisores pueden crear certificados. Si Let's Encrypt no figura ahí, la solicitud fallará (curso de DNS, lección 5.2).

Dos direcciones en WordPress

En Ajustes > Generales encontrará dos direcciones. Parecen innecesariamente duplicadas, pero significan cosas distintas:

CampoEn la base de datosSignificado
Dirección de WordPress (URL)siteurlDónde están los archivos de WordPress (wp-admin, wp-includes)
Dirección del sitio (URL)homeLa dirección que usan los visitantes

Normalmente son iguales, por ejemplo ambas https://example.com. Solo difieren si WordPress está instalado en una subcarpeta pero el sitio debe mostrarse en la carpeta raíz.

WordPress construye con estas direcciones todos los enlaces: a páginas, hojas de estilo, imágenes, el escritorio de administración. Si aquí figura http://, WordPress construirá páginas con enlaces http://, incluso si el visitante entra por https. Eso provoca contenido mixto (lección 3.2) y redirecciones de ida y vuelta.

Pasar un sitio a https

Si tiene un sitio existente en http, estos son los pasos:

  1. Solicitar el certificado para ambos nombres y comprobar que https://example.com funciona (verá una página de WordPress, quizá todavía sin estilos).
  2. Hacer una copia de seguridad (lección 8.1).
  3. Poner ambas direcciones en Ajustes > Generales en https:// y guardar. Se cerrará su sesión; inicie sesión de nuevo a través de https.
  4. Convertir los enlaces antiguos en el contenido de http://example.com a https://example.com. Hágalo con una herramienta que entienda los datos serializados, como wp search-replace o un plugin de buscar y reemplazar (lección 3.2), nunca con una simple instrucción SQL.
  5. Redirección: haga que el servidor web envíe todas las peticiones en http con un 301 a https (lección 3.2). Muchos proveedores de alojamiento tienen una casilla para esto; en caso contrario, unas líneas en .htaccess.
  6. Comprobar con el ejercicio de esta lección y el de la lección 3.2.

Bloqueado fuera: cuando la dirección está mal configurada

Si escribe un error tipográfico en las direcciones (htps://, un dominio incorrecto), WordPress le enviará tras guardar a esa dirección errónea. Ya no podrá acceder al escritorio de administración. No se preocupe, hay dos salidas:

A través de wp-config.php. Ponga antes de la línea "eso es todo, deja de editar":

define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

Estas líneas tienen prioridad sobre los valores de la base de datos. Los campos en Ajustes > Generales aparecerán entonces en gris. Inicie sesión, ponga los valores correctos en la base de datos y vuelva a quitar las líneas (o déjelas deliberadamente, así nadie podrá cambiar las direcciones por accidente desde el escritorio de administración).

A través de phpMyAdmin. Abra la tabla wp_options y ajuste los valores de siteurl y home.

HSTS: que el navegador lo recuerde

Con la cabecera HSTS (Strict-Transport-Security) el servidor le dice al navegador: "a partir de ahora, entra aquí únicamente a través de https." El navegador convierte después por sí mismo cada http:// en https://, sin hacer antes una petición sin cifrar.

Strict-Transport-Security: max-age=31536000; includeSubDomains

HSTS es un buen paso adicional, pero con una advertencia: un navegador que ya ha visto HSTS se negará después a abrir el sitio sin un certificado válido, ni siquiera con la opción "continuar de todos modos". Con includeSubDomains esto se aplica a cada subdominio. Si tiene un subdominio sin certificado (por ejemplo un sistema interno antiguo), quedará inaccesible tras activar HSTS. Por eso, empiece con un max-age corto (por ejemplo un día, 86400), compruebe que todo funciona y después amplíelo.

En la práctica: así se ve en un panel

Como ejemplo usamos DirectAdmin. En cPanel el apartado se llama SSL/TLS Status (AutoSSL), en Plesk SSL/TLS Certificates.

  1. Abra Certificados SSL en su dominio y elija Certificado gratuito y automático de Let's Encrypt.
  2. Marque example.com y www.example.com y solicite el certificado.
  3. En los ajustes del dominio, marque la casilla para enviar siempre a los visitantes a https (en DirectAdmin: Forzar SSL con redirección https). Use solo un método de redirección: dos métodos distintos a la vez pueden provocar un bucle ("demasiadas redirecciones").
  4. Vaya en WordPress a Ajustes > Generales y ponga ambas direcciones en https://.

Resumen

  • https cifra todo entre el navegador y el servidor; el certificado demuestra quién es el servidor.
  • Los certificados gratuitos de Let's Encrypt tienen una validez corta y se renuevan automáticamente; deben cubrir todos los nombres que escriba un visitante.
  • La dirección de WordPress (siteurl) y la dirección del sitio (home) deben estar ambas en https://.
  • Si se queda bloqueado fuera por una dirección incorrecta, arréglelo con WP_HOME y WP_SITEURL en wp-config.php o en phpMyAdmin.
  • HSTS es un buen paso adicional; empiece con una validez corta.

Cuestionario

1. Su sitio funciona en https, pero en Ajustes > Generales ambas direcciones siguen en http://. ¿Qué nota?



2. Ha guardado por accidente un error tipográfico en la dirección del sitio y ya no puede acceder al escritorio de administración. ¿Qué le ayuda?



3. ¿Por qué el certificado también debe cubrir www.example.com si ese nombre solo redirige a example.com?



4. ¿Cuál es el riesgo de HSTS con un max-age largo e includeSubDomains?



Ejercicio

Ejercicio A3.1: ¿Es correcto su certificado? Introduzca la dirección de su sitio. El programa establece una conexión TLS con el dominio sin www y con www (si existe) y comprueba: ¿es el certificado válido y de confianza?, ¿cubre ambos nombres?, ¿es válido durante más de 14 días?, ¿envía el sitio una cabecera HSTS? Si falta HSTS, aparecerá en naranja con una explicación, no como un error.

Ejercicio A3.1: ¿Es correcto su certificado?


No guardamos lo que escriba ni lo que encontremos. Su navegador recuerda sus respuestas y si ha superado el ejercicio. Si ha iniciado sesión, en Mis cursos solo guardamos que el ejercicio estaba (casi) correcto; allí también puede eliminarlo.

Para saber más

Estos artículos describen los pasos en los paneles de WebOké; en otros paneles funcionan de forma parecida.

Un momento…

Configure sus dominios

Configure para cada dominio los servidores de nombres, la vinculación a su hosting y quién será el titular.

Cargando sus dominios…