Migración Web

Servir un error 404 en origen tras una migración

Una migración web es un momento crucial para el tráfico SEO de una web. Son muchas cosas las que hay que tener en cuenta, si implica cambio de dominio, contenidos y arquitectura de URLs, mi recomendación es hacer la migración en 2 o 3 pasos, depende del tiempo y presupuesto que tengáis para medir y controlar. Al menos el cambio de dominio con 2 meses de antelación al cambio del resto de URLs o contenidos os ahorrará más de un quebradero de cabeza.

Después resulta importantísimo el tema de las redirecciones, pero ¿hay que redirigir todo? ¡NO! Solo aquellas URLs que verdaderamente tenga sentido redirigir, algunas pautas para saber qué tenemos que redirigir y qué no pueden ser, 1º) origen y destino deberían coincidir lo máximo posible, 2º) no es recomendable redirigir más de 2 o 3 URLs hacia otra, a no ser que se trate de unificaciones de contenido que antes estaba esparcido en varias URLs, 3º) no te cortes a la hora de devolver un 404 en origen si se trata de un contenido o URL ponzoñoss que te estaba perjudicando. Incluso un 410, será mucho más efectivo y rápido que devolver una 301 hacia el error 404 de turno en la nueva web. Para ello:

RewriteRule ^directorio/quequeramos/? [L,R=410]

Checklist para una migración de http a https

Antes de nada, necesitas una buena máquina. En primer lugar bajo https la necesidad de proceso se incrementa bastante ya que los procesadores (servidor y cliente) tienen que cifrar y descifrar la información en tiempo real. En segundo lugar, bajo https por norma general se pueden cachear muchas menos cosas.

Necesitas un buen técnico que lo haga para que nada falle y la migración sea exitosa. De momento no hay opción de indicarle a Google que has cambiado tu dominio de http a https en Google Search Console pero yo sospecho que es simplemente porque no hace falta, lo mismo que si le quitas las www a tu subdominio de toda la vida para quedarte con el root domain, tampoco puedes cambiarlo. Al grano:

SEO checklist para presevar tus ránkings al pasar de http a https

  • Asegúrate que toda tu web, recursos incluídos, corren bajo https; javascript, CSS, imágenes y todo el resto de cosas que haya, incluso las alojadas en un CDN. Una buena forma de compprobar que nada falla es pasarle algun validador
  • Usa siempre 301, las 302 son de cobardes.
  • Por supuesto, canonical autoreferencial en todas las URLs de Internet y en este caso hacia nuesstras URLs bajo https
  • si usas srcs y hrefs relativos, mañana te será mas fácil cambiar a “https2”
  • Modifica todos tus enlaces internos para que apunten a https (y los de fuera 🙂
  • Ten dados de alta el tanto el http como el https en Google, Bing y Yandex WT.
  • Vigila mediante el explorar como Google como se renderiza tu sitio bajo https.
  • Asegúrate de que todos los sitemaps sirven urls y desde https, elimina los http
  • Ojo con el robots.txt bajo http, si puedes mantenlo en blanco para que vea todas las 301. Creo recordar que si redirigías el robots.txt también al de https, si había algo deshabilitado Google no terminaba de ver las 301 bajo http, pero esto tendría que volver a comprobarlo.
  • Revisa Google Analytics, desde Universal Analytics no debería haber problemas.
  • Implemente Https Estricto / HSTS o STS a secas. Su nombre técnico es HTTP Strict Transport Security. Elimina las redirecciones mejorando mucho el tiempo de respuesta. Pero ojo, es posible que no funcionen peticiones a recursos bajo tu dominio, que no procedan de https. Puedes comprobar si tienes el HSTS activado mediante este TEST SSL de SSLLabs.com/. ¡Importante!: He visto casos con el HSTS activado pero sin la redirección 301, desconozco como se toma Google esta casuística, en cualquier caso, mi recomendación es activar siempre ambas cosas.
  • Si has hecho disavows, tendrás que subir el nuevo fichero a la nueva propiedad

Actualización, vía Natzir he descubierto como generar tu propio certificado https gratis https://letsencrypt.org/

Cambiar el dominio de un wordpress

En este artículo voy a tratar de explicar fácilmente como cambiar un blog de dominio, me voy a centrar en wordpress pero se podría aplicar a como hacer una redirección 301 completa de una web de la cual vamos a cambiar el dominio principal (nada más)

Las razones que pueden llevar a un webmaster a cambiar el dominio de una web pueden ser varias, os contaré la mía. Hace unas semanas recibí una oferta de compra para el blog Windows7.com.es, la verdad es que estaba bastante bien posicionado y no me hacía mucha gracia venderlo. Sin embargo tras mi negativa la otra parte mejoraró sustancialmente la oferta y comenzó a pasarse por mi cabeza la idea de venderlo. Máxime cuando comprobé como windowsxp.com.es y windowsvista.com.es redireccionaban a webs del gigante de redmon. Ufff, ¡podrías quedarte sin nada! pensé, así que decidí venderlo pero no quería perder todo el trabajo de la creación y posicionamiento del contenido.

Al fin y al cabo, ellos estaban interesados únicamente en el dominio. Así que se me ocurrió la idea de hacer un experimento que nunca antes había hecho, una redirección 301 completa de una web entera. En este caso una redirección 301 de todo el blog y el foro de Windows 7. La web se compone únicamente  de un wordpress de windows 7 y un bbpress también centrado en windows 7.

Hace unos días registré el mismo dominio pero con un guión entre “windows” y el “7“, windows-7.com.es. Ese es el dominio que elegí para traspasar todo el contenido del blog. A continuación os cuento los pasos que llevé a cabo.

  • Exportar todo el contenido del blog, ya sea mediante ssh, el propio panel de wordpress, mysqldump, phpmyadmin, etc. Como queráis.
  • Una vez tenemos el archivo.sql en nuestro equipo, lo abrimos con cualquier editor de texto, buscamos todas las sentencias del dominio exacto, en mi caso “windows7.com.es” y las reemplazamos por el nuevo dominio “windows-7.com.es“. Con esto conseguimos que todos los enlaces internos de todas las entradas de nuestro blog apunten hacia las nuevas urls así como todos los campos del wordpress relativos a la url. Hacemos varios trabajos de un plumazo.
  • Acto seguido, instalamos un wordpress nuevecito en el nuevo dominio e importamos el arhivo modificado con las nuevas urls. Por supuesto también deberemos importar las imágenes, plugins, themes, etc… todo lo que hubiésemos personalizado en el viejo wordpress.
  • Ahora viene cuando la matan, lo más simple, fácil, gore y a la vez importante de todo el tinglao. La redirección 301. Es tan sencillo como crear un archivo htaccess en el dominio antiguo y agregar la línea:

redirectMatch 301 ^(.*)$ http://www.windows-7.com.es$1

Con esto no sólo conseguimos redireccionar el index de un dominio al index del nuevo dominio si no que conseguimos capturar TODAS las urls que quieran entrar al dominio antiguo y redireccionarlas al la misma ruta pero en el nuevo dominio. Por poner un ejemplo si alguien busca “Foro Windows 7”, actualmente en Google todavía aparecen las viejas urls, www.windows7.com.es/foro-windows-7/, sin embargo, al pinchar en esa dirección veréis como os redirecciona automáticamente a www.windows-7.com.es/foro-windows-7/ (la dirección nueva)

Para los más vagos, si váis a seguir manteniendo el dominio antiguo indefinidamente aquí ya habríamos terminado y todo debería volver a la normalidad en cuestión de pocos días, posiciones, tráfico, links entrantes, etc. Sin embargo, la teoría muchas veces dista un buen trecho de la práctica por lo que es muy recomendable cambiar también todos aquellos links externos que apunten a la dirección vieja por la nueva que podamos, contra más, mejor, al menos molestaros en cambiar los más “tochos” o los que más trust rank os puedan pasar.

Por supuesto, si habéis vendido el dominio antiguo, váis a montar otro proyecto o cualquier otra cosa, la parte de cambiar los links externos resulta también imprescindible. Una forma fácil de controlar los links externos es la utilidad Linkdiagnosis, la cual nos permite ordenar nuestros links externos entrantes por importancia (bajo su punto de vista claro, creo que usa el motor de Yahoo, no estoy seguro). Armaros de paciencia y poneros a escribir emails a los diferentes webmasters que os hayan colocado un enlace, intercambios, trackbacks, etc. Uno por uno, no queda otra. :S

Cambiar los permalinks en wordpress

WordPress trae muchísimas opciones para configurar las URLs de nuestras cateogrías, tags y artículos. Sin ir más lejos, si elegimos una estructura personalizada para las URLs de nuestras entradas podremos jugar con las variables, “/%postname%/”, “/%post_id%/”, “/%year%/”, “/%monthnum%/”, “/%day%/”, etc.

El permalink por defecto de una instalación de wordpress es del tipo http://www.javierlorente.es/?p=123. En mi opinión, es una estructura totalmente válida y que tiene sus ventajas. Es ligera (carga poco la máquina) y no te complicas la vida tras cambios de titulares, redirecciones, señales sociales, etc. Por contra la URL no es descriptiva, no se me ocurre ningún inconveniente más. ¿Tú que opinas?

Pero el objetivo de este post es ayudar a todas esas personas que quieren, por la razón que sea, cambiar la estructura de permalinks de wordpress de un sitio en producción, con URLs indexadas, sin perder posicionamiento y haciendo redirecciones 301 una a una.

Dependiendo de la configuración que tu tengas y a la que migres, wordpress lo hará el solito. Si ves que no es así una opción puede ser forzar una redirección a la estructura por defecto y luego concatenar otra redirección 301 hacia la nueva estructura. Yoast ha creado un script que nos ayuda enormemente, simplemente en el peor de los casos habrá que agregar una línea a tu .htaccess.

Descargar todas las urls de sitios enormes

Cuando no tomamos precauciones para no indexar sitemaps el tenerlos puede favorecer los ataques de los scrappers y gente sin escrúpulos o de moral relajada. Sin embargo,  este artículo está enfocado para todos aquellos administradores web, seos o arquitectos de la información que quieran analizar más en profundidad su web para así optimizar el rastreo y por ende el posicionamiento. Es decir, a priori gente con acceso a sus propios sitemaps 😉

Si tenemos un sitio enorme, seguramente tengamos un índice de sitemaps. Una forma fácil de convertir el XML a URLs en texto plano es usando screaming SEO FROG. Más tarde mediante wget podemos generar muy fácilmente un script.sh que nos descargue todos los ficheros con tooodas las URLs directamente a nuestra máquina o pasando por un servidor web intermedio para poder zipearlos antes de bajarlos, (quizá el año que viene ya no haga falta esto.

Es tan sencillito como crear un sitemaps.sh (y darle 777) que contenga:

wget https://dominio.es/i18n-index-sitemap.xml;
wget https://dominio.uk/i18n-index-sitemap.xml;
wget https://dominio.de/i18n-index-sitemap.xml;
wget https://dominio.fr/i18n-index-sitemap.xml;

Y luego ejecutar ya sabes con ./sitemaps.sh

 

Descargar todos los errores de rastreo (con sus orígenes) de un sitio web mediante el API de Google Search Console

Para los técnicos, aquí tenéis el enlace hacia la documentación del API de Webmaster Tools. Para los menos técnicos, podemos jugar con ella mediante los plugins de Excel “Excel SEO Tools” y mejor todavía (ya que permite no solo descargar los errores 404 si no también los lis “Linked From” asociados, plugin “Analytics Edge“. Ambos de pago pero con trials de prueba.

Antes de nada, el límite de descarga son entre 1000 y 5000 errores diarios, pero podemos saltarnos esta limitación fácilmente agregando subdirectorios de nuestro sitio a Google Search Console ya que el límite realmente se aplica por sitio de webmaster tools y no por dominio, por lo que si tenemos sitio.com/noticias/ y sitio.com/fotos/ podremos descargar 1000 de cada sitio.

Antes de nada, recordad que tener muchos errores 404 detectados por Google no tiene por qué ser un gran problema SEO si los orígenes de esos errores no están en nuestro sitio web. Realmente el problema lo tendría el origen que está enlazando destinos rotos y eso a Google no le va a gustar un pelo. Más información sobre este tema aquí. No obstante, siempre conviene tener el informe limpito básicamente para poder detectar nuevos reales graves más fácilmente.

Descargar errores 404 y los linked from con Analytics Edge

Descargamos el plugin y instalamos también el connector.

Una vez instalado, abrimos Excel > Google Search > Site Admin> URL Crawl Errors Samples > Category (notFound) > platform (web) > finish

Asegúrate de comprobar la URL (dominio, subdominio con www, con http, https, etc que quieres extraer, sleccionalo con el ratón mejor que ponerlo a mano para evitar errores.

Te salen los 1000 primeros errores.

Para descargar los detalles de cada error, tendríamos que hacer lo mismo que antes, pero seleccionar esta vez “Crawl Errors Details” y darle la URL del error que queramos.

Si lo queremos automatizar pudiendo poner en ese campo en lugar de una URL “[pageUrl]” y poder arrastrar celdas hacia abjo, debemos comprar la licencia del CORE Addin.

Es decir, necesitaríamos comprar el Plugin Analytis Edge CORE (72€/año) y el Google Search Console Connector, (48€/año) en total 120€/año.

Si tienes el CORE PLUGIN y no te saca los 1000 primeros errores le damos arriba a “FILE” y cambiamos el de “reemplazar” y le decimos un “worksheet” nuevo y ahí nos pondrá los 1000 (recuerda que puedes relativizar a una celda.. y poner años a años en cada celda y te sacará todos”

Actualización 18 de Abril de 2016: Con las nuevas funcionalidades del API, ya no es necesario hacer nada más. Quizá incluso con el Analytics Edge Basic, puedas descargarte los errores, tengo que probarlo. Hasta ahora con el API viejo los pasos a seguir eran:

Luego haces otra consulta con [pageUrl]
y la vuelves a escribir en otra hoja diferente..

Niels Bosma, autor de excel seo tools, comentó hace unas semanas por twitter que implementarían esta funcionalidad también, de momento puedes descargar los errores pero no los orígenes. Incluso dijo que podrías ejecutar consultas directamente al API vía excel como si fuese una consola. ¡Quedamos a la espera!

Por otro lado, Mike Sullivan, autor del Analytics Edge Plugin, me comentó hace unos meses por email que había incluido en el roadmap el poder agregar y eliminar sitios a Google Search Console directamente desde Excel, muy útil tambíen cuando te enfrentas a sitios con millones de errores… para evitar todas las limitaciones de los 1000 errores / día. Pero lo mejor será cuando permita marcar como solucionados también vía excel de forma super fácil para los mortales

Finalmente, andamos a la espera también de gente que me consta que ha conseguido automatizar el mark as fixed, libere el código necesario para newbies. 🙂

 

Comprobar registros DNS

Hace ya casi 4 años escribí un post sobre como saber a la ip que resolvía un dominio, un determinado host en el caso de que haya diferentes registros del mismo dominio en diferentes host, puede que no siempre sea el mismo.

Hoy se trata de averiguar qué registros DNS tiene creado un host de forma sencilla y desde el intérprete de comandos de windows o de cualquier otro sistema operativo, mediante el nslookup también, pero indicándole el tipo de registro DNS que queremos comprobar, A, AAAA, MX, CNAME, TXT, SPF, etc.

Para ello typeamos: nslookup -q=[tipo-registro] host

Nos devolverán un listado de registros, tened en cuenta los TTL, cachés, etc.

Como saber la IP que devuelve un dominio con un servidor DNS concreto

Cualquiera que haya leído el título de este artículo podría pensar “menuda chorrada”, hago un ping o un nslookup y listo. Pero no me refiero a eso si no a saber qué ip le ha asignado el sistema que usa Dreamhost a tu dominio que acabas de agregar en el panel de control incluso sin la necesidad de apuntar el dominio a Dreamhost.

Se me ocurren varias razones por las que querer hacer esto, en mi caso, tengo el blog alojado en Redcoruna y quiero hacer un subdominio pero alojarlo en dreamhost, por ejemplo http://directorio.javierlorente.es. Cómo puedo saber a qué IP tengo que apuntar el registro A directorio.javierlorente.es si Dreamhost al parecer las va poniendo dinámicamente? Muy fácil, haciendo un nslookup pero usando los servidores DNS de la propia Dreamhost:

De normal haríamos:

nslookup ribanet.com

Pero si queremos averiguar la respuesta de un tercer servidor tipeamos:

nslookup ribanet.com ns1.dreamhost.com

Con lo que nos devuelve la IP que ns1.dreamhost.com (o el servidor que queramos) tiene asignada a ese dominio.

About the author

Javier Lorente Murillo

https://plus.google.com/+JavierLorente/posts

Leave a comment:


A %d blogueros les gusta esto: