Czeste bledy URL encoding, ktore psuja linki i redirecty
Praktyczny przewodnik po najczestszych bledach URL encoding, w tym podwojnym kodowaniu, zepsutych query stringach, zlych parametrach i problemach z redirectami.
Podwojne kodowanie to najszybszy sposob na zepsucie URL
Czestym bledem jest kodowanie wartosci wiecej niz raz. Parametr taki jak `a%20b` moze po drugim przejsciu zamienic sie w `a%2520b`, przez co URL staje sie trudniejszy do odczytania i czesto zmienia to, co dostaje backend.
Zwykle dzieje sie tak, gdy jedna warstwa koduje wartosc, a druga robi to ponownie przed zbudowaniem finalnego linku. Naprawa jest prosta: zakoduj raz w momencie wejscia surowej wartosci do URL i potem jej nie ruszaj.
Zepsute query i kruche redirecty zwykle wynikaja z mieszania kontekstow
Kolejny czesty problem to uzycie zlych zasad kodowania dla zlej czesci URL. Parametry query, segmenty sciezki i cele redirectow nie zachowuja sie tak samo, wiec wartosc bezpieczna w jednym miejscu moze zepsuc sie w innym.
Redirecty sa szczegolnie wrazliwe, bo juz zakodowany cel moze zostac zdekodowany, zakodowany ponownie albo obciety przez systemy posrednie. Jesli link zawiera spacje, ampersandy lub znaki zarezerwowane, zawsze sprawdz finalny output przed publikacja.