Kontakta supporten

Vi svarar via e-post, oftast inom två dagar.

Google reCAPTCHA kontrollerar det här inskicket mot missbruk; data skickas till Google. Skriptet laddas först när formuläret öppnas.

← Alla inlägg

Vad stats2.gif egentligen är

I bildmappen för det här projektet finns en fil som heter stats2.gif. Den är 366 byte, daterad mars 2018, och förekommer på exakt noll rader i källkoden. Den 23 augusti 2026 levererades den 2 735 gånger med statuskod 200, från 145 olika webbplatser — och sett över åtkomstloggens hela rotationsperiod från 858.

En fil som ingen refererar till, hämtad tusentals gånger om dagen från hundratals främmande sidor. Den självklara tolkningen: en gammal inbäddning som folk aldrig bytt ut och som i det tysta levererar en statisk bild där det en gång satt en räknare. Statiska filer går helt förbi PHP. Inget som når Apache direkt kan räkna någonting.

Så vi skrev ett verktyg. Det läser ut varje hänvisande sida ur loggen, hämtar var och en via samma kontrollfunktion som webbplatsen redan använder för att diagnostisera inbäddningar — med dess SSRF-skydd, eftersom adresserna kommer från en logg och inte från oss — och undersöker om något på sidan faktiskt räknar.

Alla 858 sidor

räknar redan (en fungerande inbäddning bredvid)501
inte nåbara alls288
märket finns, inget räknarnummer i källkoden69
bara det gamla märket, inget som räknar0
räknar redan501ej nåbara288ikon, inget nummer69fallet vi letade efter: 0

Inte en enda. Sjuttiofem minuter av hämtningar, och svaret var nej.

Mätningen som tar en sekund

stats2.gif är 13 gånger 14 pixlar.

Det är ingen räknare och inget märke med en siffra på. Det är den lilla statistikikonen — samma sak som design 981 i det nuvarande galleriet återskapar, och den designens egen källkodskommentar beskriver sin föregångare exakt: ingen synlig siffra, bara en liten markering som öppnar statistiken när man klickar på den. Den var aldrig tänkt att räkna. På de sidorna var det alltid något annat som gjorde det.

Filen är inte heller trasig. Den svarar 200 med en Last-Modified från 2018 och ett års cachetid. Den gör sitt jobb.

Ett anrop till getimagesize() avgör hela den frågeställningen på en sekund. Här var frågan ”varför hämtas den här filen så ofta”, det antagna svaret var ”för att det är en trasig räknare”, och allt därefter vilade på antagandet i stället för på filen — vilket är just det som gör kontrollen på en sekund värd att köra först.

Det enda som verkligen är trasigt

Av allt detta visade loggen en enda verklig defekt: en adress som begärdes tio gånger om dagen, alltid med 410, där ett helt inbäddningskodavsnitt hade hamnat inuti länkens href. Någon klistrade in koden i ett fält som escapar HTML. Räknaren lever och räknar — det är bara ägarens egen länk till den egna statistiken som inte leder någonstans.

Verktyget blir kvar, utan sin skrivväg. Frågan var berättigad, svaret är nej, och båda är värda att behålla så att ingen behöver ställa den för hand igen.

Annons