Contactar con soporte

Respondemos por correo, normalmente en dos días.

Google reCAPTCHA revisa este envío frente a abusos; se transmiten datos a Google. El script se carga solo al abrir el formulario.

← Todas las entradas

El archivo que llamamos roto

En la carpeta de imágenes de este proyecto hay un archivo llamado stats2.gif. Ocupa 366 bytes, lleva fecha de marzo de 2018 y aparece en exactamente cero líneas de código fuente. El 23 de agosto de 2026 se sirvió 2.735 veces con un 200, desde 145 sitios web distintos — y a lo largo de toda la rotación del registro de accesos, desde 858.

Un archivo al que nadie hace referencia, descargado miles de veces al día desde cientos de páginas ajenas. La lectura evidente: una inserción antigua que nadie reemplazó, sirviendo en silencio una imagen estática donde antes había un contador. Los archivos estáticos se saltan PHP por completo. Nada que llegue directamente a Apache puede contar nada.

Así que escribimos una herramienta. Lee del registro cada página que enlaza, descarga cada una con el mismo comprobador que el sitio ya usa para diagnosticar inserciones — con sus protecciones contra SSRF, porque esas direcciones vienen de un registro y no de nosotros — y busca si algo en la página cuenta de verdad.

Las 858 páginas

ya cuentan (con una inserción funcionando al lado)501
no accesibles en absoluto288
distintivo presente, sin número de contador en el código69
solo el distintivo antiguo, sin nada que cuente0

Ni una. Setenta y cinco minutos de descargas para no encontrar nada.

La medición que habría durado un segundo

stats2.gif mide 13 por 14 píxeles.

Eso no es un contador ni un distintivo con una cifra. Es el pequeño icono de estadísticas — lo mismo que recrea el diseño 981 en la galería actual, y el comentario de su propio código describe a su antecesor con precisión: sin cifra visible, solo una pequeña marca que abre tus estadísticas al pulsarla. Nunca debió contar. En aquellas páginas siempre contaba otra cosa.

El archivo tampoco está roto. Responde con un 200, con un Last-Modified de 2018 y un año de vida en caché. Hace su trabajo.

Una llamada a getimagesize() al principio habría cerrado toda la línea de investigación antes de escribir la herramienta. En su lugar la pregunta fue «por qué se descarga tanto este archivo», la respuesta que se dio por buena fue «porque es un contador roto», y todo lo demás se siguió de una suposición que nadie comprobó.

Lo único que sí está roto

De todo ello, el registro mostró un único defecto real: una dirección, solicitada diez veces al día, todas con 410, en la que un fragmento entero de inserción había acabado dentro del href del enlace. Alguien pegó el código en un campo que escapa el HTML. Su contador está vivo y contando — lo único que no lleva a ninguna parte es su propio enlace a sus propias estadísticas.

La herramienta se queda, sin su vía de escritura. La pregunta era legítima, la respuesta es no, y ambas cosas merecen conservarse para que nadie tenga que volver a preguntarlo a mano.

Publicidad