Google Analytics · 1 min read · Jan 04, 2026

Acelera Google Analytics

Acelera Google Analytics

Este método utiliza crontab para ejecutar un script de shell que descarga un archivo urchin.js actualizado cada 24 horas y lo guarda en el directorio de tus sitios locales. ¡Eso es todo!

El problema ocurre cuando google-analytics.com/urchin.js es solicitado por miles de millones de usuarios web en todo el mundo al mismo tiempo, lo que puede hacer que las páginas de tu sitio se carguen a un ritmo de caracol. Especialmente si estás utilizando WordPress o un CMS similar.

Posición oficial de Google sobre el alojamiento local de urchin.js

Configura crontab escribiendo

crontab -e

en un terminal de estilo unix (ssh) y luego agrega:

11 12 * * * /home/user/websites/urch.sh >/dev/null 2>&1

Ejemplo de script de shell:

#!/bin/sh
rm /home/user/websites/askapache.com/z/j/urchin.js
cd /home/user/websites/askapache.com/z/j/
wget http://www.google-analytics.com/urchin.js
chmod 644 /home/user/websites/askapache.com/z/j/urchin.js
cd ${OLDPWD}
exit 0;

Hay 2 cosas bastante importantes que logras al alojar urchin.js localmente:

  1. Habilitas conexiones persistentes
  2. Aseguras que el encabezado 304 Not Modified correcto se envíe de vuelta a los visitantes de tu sitio en lugar de reservar todo el archivo.

Un problema con urchin.js alojado de forma remota es que el servidor desde el cual se sirve el archivo urchin.js no permite conexiones persistentes.

Otra gran razón es que, aunque los encabezados Cache-Control están configurados correctamente por google-analytics al servir urchin.js, en lugar de responder a un encabezado If-Modified-Since correctamente con un encabezado 304 Not Modified, indicando que el archivo no ha sido modificado, google-analytics devuelve en su lugar todo el archivo urchin.js nuevamente, lo que anula el control de caché.

Puedes ver este problema claramente con una captura de wireshark.

GET /urchin.js HTTP/1.1  
Accept: */*  
Referer: http://www.askapache.com  
Accept-Language: en-us  
UA-CPU: x86  
Accept-Encoding: gzip, deflate  
If-Modified-Since: Tue, 20 Mar 2007 22:49:11 GMT  
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SU 2.011; .NET CLR 1.1.4322; .NET CLR 2.0.50727; Alexa Toolbar; .NET CLR 3.0.04506.30)  
Host: www.google-analytics.com  
Connection: Keep-Alive
HTTP/1.1 200 OK  
Cache-Control: max-age=604800, public  
Content-Type: text/javascript  
Last-Modified: Tue, 20 Mar 2007 22:54:02 GMT  
Content-Encoding: gzip  
Server: ucfe  
Content-Length: 5675  
Date: Sat, 24 Mar 2007 18:23:12 GMT

Nota: Necesitarás un esquema de caché en tu servidor para obtener resultados óptimos.

¡Un poco de exceso bastante dulce!

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.