Kalbos kodas, atrodęs kaip Perl
Šiame straipsnyje
2026 m. rugpjūčio 19 d. į .htaccess įtraukėme taisyklę, blokuojančią failų rūšį, kurios niekada nereikėtų tiesiogiai pateikti naršyklei: po redagavimo žiniatinklio šakniniame kataloge likusias pradinio kodo kopijas — index.php.bak, atsitiktinį config.py, bet ką su scenarijaus plėtiniu, kur lankytojas galėtų gauti kodą kaip paprastą tekstą, užuot jį vykdęs.
Taisyklė tikrino failo plėtinį: .php, .py, .rb, .pl, ir tuziną kitų. .pl yra Perl. Šiame projekte nėra nė vienos Perl eilutės — taisyklė buvo atsargumo priemonė, o ne esamo failo pataisymas.
Maždaug po dienos lankytojas pranešė, kad neveikia skaitiklių peržiūros. Visos, bet tik viena kalba.
Kitas „pl“
stats4u.net kiekvieno lankytojo kalbą pasirenka pagal Accept-Language derinimą, o ne pastovią numatytąją reikšmę — lenkų kalbą nustačiusiai naršyklei pateikiama /pl/ be jokio peradresavimo, o anglų kalba naudojama tada, kai niekas neatitinka. Lenkų kalba parenkama dažnai: ten patenka pakankamai lankytojų, kad dieną neveikiančios miniatiūros neliktų ilgai nepastebėtos.
Kiekviena dizaino peržiūra yra vienas mažas failas kiekvienam stiliui ir kalbai: cache/preview/2900.pl.svg. Šablonas, skirtas aptikti something.pl — Perl scenarijų — taip pat atitiko tokią seką: 2900.pl ir tada .svg: stiliaus numeris, kalbos kodas, kuris sutampa su scenarijaus plėtiniu, ir tikrasis failo tipas. Taškas-pl-taškas šablonas jų atskirti negali.
Kiekviena .pl.svg ir .pl.png peržiūra galerijoje pradėjo atsakyti 403 Forbidden. Visos kitos kalbos liko nepaliestos, nes joks kitas svetainės naudojamas kalbos kodas nesutampa su įrašu plėtinių sąraše. Tik šis vienas.
Kas pasikeitė
pl pašalintas iš plėtinių sąrašo. Jis vis dar blokuoja kiekvieną tikrą scenarijaus plėtinį, dėl kurio šiame projekte yra pagrindo nerimauti; kalbos jis nebeblokuoja.
Tai verta užrašyti dėl pačios įvykio priežasties: failų plėtinių ir kalbų kodų sąrašai yra iš dviejų skirtingų žodynų, ir niekas netrukdo dviejų raidžių įrašui reikšti abu dalykus iš karto. Prieš papildydami kurį nors sąrašą svetainėje su kalbos priešdėliais kelyje, patikrinkite jį pagal kitą. Čia tokia patikra nebuvo atlikta, o problemą atskleidė neveikiančias miniatiūras pastebėjęs skaitytojas — todėl plėtinys pl, kurio sąraše nebėra, dabar turi priežastį paaiškinantį komentarą, kad kitas tvarkymas pirmiausia susidurtų su priežastimi, o tik paskui – su taisykle.