Mi is valójában a stats2.gif
A projekt képmappájában van egy fájl, a neve stats2.gif. 366 bájtos, 2018 márciusából származik, és pontosan nulla forráskódsorban szerepel. 2026. augusztus 23-án 2 735 alkalommal szolgálták ki 200-as válasszal, 145 különböző weboldalról – a hozzáférési napló teljes rotációs időszaka alatt pedig 858 weboldalról.
Egy fájl, amelyre semmi sem hivatkozik, és amelyet naponta ezerszámra kérnek le idegenek oldalainak százairól. A kézenfekvő értelmezés: egy régi beágyazás, amelyet senki sem cserélt le, és amely csendben egy statikus képet szolgál ki ott, ahol korábban számláló volt. A statikus fájlok teljesen megkerülik a PHP-t. Ami közvetlenül az Apache-hoz érkezik, az semmit sem tud megszámolni.
Írtunk hát egy eszközt. Kiolvassa a naplóból az összes hivatkozó oldalt, mindegyiket lekéri ugyanazzal az ellenőrzővel, amelyet a weboldal a beágyazási diagnosztikához már használ – az SSRF elleni védelmével együtt, mert ezek a címek egy naplóból származnak, nem tőlünk –, és megnézi, számol-e ténylegesen valami az oldalon.
Mind a 858 oldal
| már számol (mellette működő beágyazás) | 501 |
| egyáltalán nem érhető el | 288 |
| jelvény van, de számlálószám nincs a forrásban | 69 |
| csak a régi jelvény, semmi sem számol | 0 |
Egy sem. Hetvenöt percnyi lekérés, és a válasz: nem.
A mérés, amely egy másodpercig tart
stats2.gif mérete 13 × 14 képpont.
Ez nem számláló, és nem is számot mutató jelvény. Ez a kis statisztikaikon – ugyanaz, amit a jelenlegi galéria 981-es dizájnja újraalkot, és ennek a dizájnnak a saját forráskód-megjegyzése pontosan leírja az elődjét: nincs látható szám, csak egy kis jel, amely kattintásra megnyitja a statisztikát. Soha nem is kellett számolnia. Ezeken az oldalakon mindig valami más számolt.
A fájl nem is hibás. 200-as állapotkóddal válaszol, a Last-Modified értéke 2018-as, a gyorsítótár-élettartam egy év. Elvégzi a dolgát.
Egyetlen getimagesize() hívás egy másodperc alatt lezárja ezt az egész vizsgálódást. Itt a kérdés az volt, hogy „miért kérik le ilyen gyakran ezt a fájlt”, a feltételezett válasz az, hogy „mert hibás számláló”, és minden, ami ezután jött, a feltételezésen alapult, nem a fájlon – ezért érdemes az egymásodperces ellenőrzést elsőként lefuttatni.
Az egyetlen dolog, ami tényleg hibás
Az egészből a napló egyetlen valódi hibát mutatott: egy címet, amelyet naponta tízszer kértek le, mindig 410-es válasszal, mert egy teljes beágyazási kódrészlet került a link célattribútumába, vagyis ide: href. Valaki olyan mezőbe illesztette be a kódot, amely a HTML-t szövegként kezeli. A számlálója él és számol – csak a saját statisztikájára mutató saját linkje nem vezet sehová.
Az eszköz megmarad, az írási útvonala nélkül. A kérdés jogos volt; a válasz nem; és mindkettőt érdemes megőrizni, hogy senkinek ne kelljen újra kézzel feltennie.