Networking de Profesionales

Distintas versiones de una web. https y www

Elegir la versión correcta de una web en cuanto a http/https y www/no www y su correcta implementación

Autor: Carlos Sánchez
Temática: Servidores
Fecha de publicación: 2022-10-12
Última revisión: 2022-11-25

Toda web una vez se tiene un dominio y un hosting, tiene 4 versiones (siempre que se utilice un SSL).

Una web puede utilizar http o https, que en el caso del SEO si que afecta en cierta medida y es recomendable utilizar siempre https y más aún cuando con Let's Encrypt es totalmente gratuito.
Respecto a si utilizar o no www no tiene repercusión alguna en el posicionamiento web. Pero si se debe elegir una de las dos opciones.

Entonces, para hacerlo más gráfico, tenemos estas 4 posibilidades dentro de una web. Donde la recomendación es utilizar https y respecto a usar o no www es una decisión subjetiva y de preferencia que se debe tomar en cualquier proyecto:

Las opciones más aceptadas en el mundo del SEO, sería cualquiera de las dos de abajo. Es decir, con https

Una vez se haya tomado una decisión, no basta con decidirlo o pensarlo, hay que hacer las implementaciones pertinentes para dicho propósito.

Google Search Console y Bing webmaster

A diferencia de con otros cambios de URL, a día de hoy, Google Search Console no recomienda utilizar la herramienta de cambio de direcciones para este propósito. Y Bing Webmaster eliminó su herramienta de cambio de direcciones en 2021. Ya no aparece ni en la documentación ni en la herramienta, a pesar de que esta herramienta se lanzó en 2013.

Lo que si recomiendo es verificar las opciones por medio de Search Console, en el caso de que hubiera algún fallo posible (para poder detectarlo). Y hacer también la verificación por dominio entero siempre que sea posible.

Esto nos servirá para controlar si hay algún error en algún momento casual. Sin embargo la implementación importante para estos casos son las redirecciones.

Redirecciones

Las redirecciones son vitales para una configuración óptima en este caso. Recordemos que solo debe haber una de esas 4 opciones que sea válida para evitar una página duplicada.

Además estas redirecciones deben estar bien hechas y hacer una redirección limpia. Ya que tener aquí una cadena de 2 redirecciones nos puede ocasionar problemas aún más graves en el futuro.

Cadena de redirección desde una página con http y www a una página con https y www hasta la página final con https y sin www.
Herramienta empleada: Redirect Path

Para evitar estas cadenas, tenemos que asegurarnos que ambos tipos de redirecciones vayan a la versión de URL correcta.

Ninguna otra combinación que no sea que todas las URL apunten a la misma versión sería correcta.

Respecto a la pregunta del millón. ¿Cómo hacerlo?

NOTA IMPORTANTE: Es posible que tu proveedor de hosting, o tu interfaz gráfica de servicio web (como puede ser cpanel o plesk) esté generándote alguna de estas redirecciones. Es importante comprobarlo antes de implementar nada, y siempre recomiendo probar todas las implementaciones en un entorno de testing/staging/pruebas seguro.

Redirecciones de protocolo y www en Apache

Antes de realizar esta tarea, tenemos que tener claro cual va a ser la versión válida. Por ejemplo https con www

Para entender esta implementación, hay que comprender que apache hace las redirecciones de una forma lineal, de arriba hacia abajo.
Estas redirecciones son un tanto especiales y no nos valdrá el redireccionador de enlaces para esta tarea.

Entonces tenemos que ir a la parte más arriba posible de nuestro .htaccess y comenzar con las redirecciones.

Redirección de HTTP

Con este código detectamos que si está desactivado el https, se redirija con un rewrite rule a la versión con https correcta. Aquí tenemos que tener claro que si utilizamos www, tenemos que poner el www y si no lo utilizamos, no ponerlo. Para evitarnos la cadena de redirecciones de la imagen anterior.

Recordemos que a nivel de SEO, se recomienda utilizar siempre HTTPS

Redirección de http a https:

<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Redirección de https a http:

Puede ocurrirnos con alguna web, que por algún motivo no se utilice el SSL ni el https. En este caso, teniendo en cuenta las mismas características que en el ejemplo anterior; el código sería el siguiente:
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} on
RewriteRule (.*) http://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Redirección de WWW

En este caso no hay ninguna opción SEO mejor que otra, así que se debe utilizar una versión u otra en cuanto más bien a preferencia.

Recomiendo poner estos códigos después de los códigos anteriores. Y redireccionar a http o https en función de lo que hayamos elegido.

Redireccionar de no www a www


<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule (.*) https://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Redireccionar de www a no www:

Por el contrario, si lo que queremos es que no exista la versión de www se haría de la forma opuesta:
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule (.*) https://example.com/$1 [R=301,L,QSA]
</IfModule>

Barra Slash (/)

La terminación de la página en / o sin / también es una característica diferenciadora. Oficialmente las páginas pueden acabar en ambas terminaciones. Normalmente los Frameworks o CMS suelen elegir una por defecto o lo suele hacer el servidor.
No obstante no siempre está esa suerte, y se puede conseguir tener un contenido duplicado. Además de utilizar un self-canonical, lo ideal es emplear una redirección.
En el caso de querer hacer una redirección para solucionar este problema, tenemos dos opciones.

Recuerda cambiar el www.example.com por el dominio en cuestión

Redireccionar las versiones sin barra a la versión con barra al final

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule (.*) https://www.example.com/$1/ [R=301,L,QSA]
</IfModule>

Redireccionar las versiones con barra a la versión sin barra al final

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)/$ https://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Cuidado con generar contenido distinto

Puede ocurrir, que si no se tiene un control sobre los slash, o sobre la página, se acaben generando 2 url idénticas, compitiendo por la mismas intenciones de búsqueda.

Además en el caso del ejemplo que os muestro, resulta más grave ya que ni si quiera se selecciona una canonical. Esto sería ejemplo de una mala práctica y puede generar problemas.

paginas distintas que la url solo varía por el slash

Extensión del archivo

En ocasiones, las url también pueden llamarse según la extensión del lenguaje en el que están corriendo. Como .html, .php, .asp y un largo etc. Realmente esta práctica no afecta al SEO, siempre y cuando se mantenga una versión como buena.

Por cuestión de no alargar de más la URL y no ofrecer una información irrelevante para el usuario promedio, se suele no mostrar y redireccionar la extensión del archivo en la URL, ya que a nivel de imagen queda más bonita la URL de una forma limpia.

Bibliografía

¿Quieres contratarme?

Si quieres que te ayude a mejorar gracias al SEO Técnico. ¡Contacta ya!

¡Haz clic para contatar mis servicios!
Tal vez te interesen estos artículos: