Link zawierający polskie znaki może działać bez zarzutu w edytorze, a po publikacji prowadzić do błędu 404 lub zupełnie innej podstrony. Problem najczęściej nie leży w samych literach „ą”, „ę”, „ł” czy „ź”, lecz w sposobie zapisania adresu przez system CMS, edytor tekstu albo mechanizm przekierowań. Dlatego sprawdzenie linku po publikacji powinno obejmować nie tylko kliknięcie, ale również kontrolę rzeczywistego adresu docelowego i odpowiedzi serwera.
Polskie znaki w adresie URL – co faktycznie sprawdza przeglądarka?
Adres zawierający polskie litery może wyglądać inaczej w pasku przeglądarki niż w komunikacji z serwerem. Dzieje się tak za sprawą kodowania procentowego (percent-encoding), które pozwala reprezentować znaki spoza ASCII za pomocą bajtów UTF-8 zapisanych w formacie szesnastkowym.
Przykładowo adres https://firma.example/oferta/łódź może być przesyłany ze ścieżką /oferta/%C5%82%C3%B3d%C5%BA. Fragment %C5%82 odpowiada literze „ł”, %C3%B3 literze „ó”, a %C5%BA literze „ź”. Obie postacie reprezentują tę samą ścieżkę po prawidłowym zakodowaniu. Widoczność znaków procentowych nie oznacza więc uszkodzenia linku.
Inaczej wygląda sytuacja, gdy system publikacyjny automatycznie usuwa polskie znaki. Standardowy mechanizm tworzenia przyjaznych adresów w WordPressie przekształca znaki diakrytyczne na litery łacińskie. W rezultacie podstrona zatytułowana „Oferta Łódź” może otrzymać adres /oferta-lodz, a nie /oferta-łódź.
To istotna różnica. Adresy /oferta-lodz i /oferta-łódź nie są automatycznie równoważne. Jeśli serwer nie obsługuje obu ścieżek ani nie ma odpowiedniego przekierowania, jedna z nich może zwracać błąd 404.
Osobną kwestią są polskie znaki w nazwie domeny. Domeny takie jak żaba.pl korzystają z mechanizmu IDN i zapisu Punycode z prefiksem xn--. Nie należy mylić go z procentowym kodowaniem polskich liter w ścieżce adresu. Domena z polskimi znakami jest również odrębną nazwą od jej odpowiednika bez znaków diakrytycznych.
Praktyczna decyzja jest prosta: jeśli adres dopiero powstaje, zwykle rozsądniej zastosować w ścieżce wersję bez polskich znaków. Zmniejsza to ryzyko błędów podczas kopiowania do mailingów, dokumentów i zewnętrznych systemów. Nie ma jednak powodu zmieniać działającego, opublikowanego adresu tylko dlatego, że zawiera polskie litery. Taka operacja bez przekierowania może zepsuć wcześniej udostępnione odnośniki.
Jak przetestować opublikowany link i wykryć ukryte błędy?
Najbardziej miarodajny test wykonuje się na publicznej wersji artykułu, a nie w podglądzie CMS. Podgląd może korzystać z sesji administratora, roboczych adresów lub treści niedostępnych dla zwykłych odwiedzających.
Załóżmy, że redaktor publikuje tekst o usługach w Łodzi. W treści umieszcza odnośnik prowadzący do /usługi/łódź, choć faktyczny adres strony docelowej to /uslugi/lodz. Sam napis widoczny dla czytelnika może wyglądać poprawnie. Błąd znajduje się w adresie przypisanym do odnośnika.
Kontrolę najlepiej wykonać w następującej kolejności:
- Otwórz opublikowany artykuł i kliknij link. Sprawdź, czy pojawia się właściwa podstrona, a nie tylko strona główna serwisu.
- Skopiuj adres odnośnika za pomocą opcji „Kopiuj adres linku” i wklej go do zwykłego edytora tekstu. Porównaj z rzeczywistym adresem strony docelowej.
- Otwórz link w trybie prywatnym, bez zalogowania do panelu administracyjnego. Pozwoli to wychwycić problemy z dostępem do treści.
- Sprawdź przekierowania i kod odpowiedzi HTTP. Dla standardowej publicznej podstrony końcowa odpowiedź powinna wynosić 200.
- Powtórz test na telefonie, zwłaszcza jeśli link będzie udostępniany w mediach społecznościowych lub wiadomościach. Sprawdź również przejście bezpośrednio z aplikacji, w której link opublikowano.
Wynik testu trzeba właściwie zinterpretować. Kod 200 OK oznacza udaną odpowiedź serwera, ale nie potwierdza, że wyświetlono odpowiednią treść. Niektóre serwisy zwracają kod 200 nawet dla strony informującej o braku artykułu. To problem określany jako soft 404.
Kod 301 lub 308 oznacza trwałe przekierowanie. Jest prawidłowy, jeśli prowadzi do zamierzonego adresu i końcowa strona działa. Kod 302 lub 307 służy przekierowaniom tymczasowym. Natomiast 404 sygnalizuje brak zasobu, 410 jego trwałe usunięcie, a odpowiedzi 5xx wskazują na problem po stronie serwera.
Przy bardziej technicznej kontroli przydaje się polecenie curl, dostępne na różnych systemach operacyjnych. Przykładowy test, po podstawieniu rzeczywistego adresu, wygląda tak:
curl -sS -L -o /dev/null -w 'HTTP: %{http_code}; przekierowania: %{num_redirects}; adres: %{url_effective}\n' 'https://firma.example/oferta/%C5%82%C3%B3d%C5%BA'
Polecenie wykonuje żądanie, podąża za przekierowaniami i pokazuje końcowy status HTTP, liczbę przekierowań oraz adres docelowy. Jest przydatne szczególnie wtedy, gdy przeglądarka automatycznie poprawia lub przekształca adres i trudno dostrzec, co stało się po kliknięciu.
Nie należy natomiast uznawać jednego udanego testu za gwarancję poprawności wszystkich odnośników. Edytor newslettera, skracacz URL czy narzędzie do publikacji postów może zmienić zapis adresu niezależnie od działania samej strony. Testuj więc także gotową wiadomość lub post, a nie wyłącznie link przed jego wklejeniem.
Poprawianie adresu po publikacji – kiedy zmienić link, a kiedy ustawić przekierowanie?
Najpierw trzeba ustalić, gdzie rzeczywiście powstał błąd. Nie warto przebudowywać adresów całej witryny, jeżeli problem dotyczy jednego źle wklejonego odnośnika. To częsta i niepotrzebnie kosztowna reakcja.
Przykład: na stronie zewnętrznego wydawcy opublikowano link do /poradnik/zażółć, lecz docelowy artykuł od początku znajduje się pod /poradnik/zazolc. Jeśli można edytować publikację, najszybszym rozwiązaniem jest poprawienie adresu w jej treści. Przekierowanie po stronie serwera nie jest wtedy konieczne.
Sytuacja zmienia się, gdy nieprawidłowy lub stary adres trafił już do wielu miejsc: opublikowanych artykułów, newsletterów, kodów QR albo materiałów drukowanych. Wówczas przekierowanie 301 ze starego URL na właściwy pozwala zachować dostęp do treści bez konieczności poprawiania każdego udostępnionego odnośnika. Warunek jest jeden: właściciel witryny musi mieć możliwość skonfigurowania takiego przekierowania.
Nie należy kierować wszystkich błędnych adresów na stronę główną. Czytelnik oczekujący konkretnego poradnika otrzyma wówczas niepowiązaną treść, a wyszukiwarka może potraktować taką sytuację jako soft 404. Przekierowanie powinno prowadzić do tej samej treści pod nowym adresem lub jej rzeczywistego odpowiednika.
Po zmianie adresu na własnej stronie trzeba dodatkowo sprawdzić linki wewnętrzne, tag canonical oraz mapę witryny XML. Powinny wskazywać wybrany, docelowy URL. W Google Search Console funkcja „Sprawdzenie adresu URL” umożliwia ocenę sytuacji z perspektywy wyszukiwarki, ale nie zastępuje sprawdzenia działania strony w przeglądarce. Nie gwarantuje również natychmiastowej aktualizacji indeksu Google.
Uwaga także na podwójne kodowanie znaków. Jeżeli fragment %C5%82 zostanie ponownie zakodowany, znak % może zmienić się w %25. Powstanie wtedy inna postać ścieżki, której serwer może nie rozpoznać. To jeden z powodów, dla których ręczne poprawianie procentowych fragmentów URL bez sprawdzenia końcowego wyniku jest ryzykowne.
Najrozsądniejsza kolejność działań jest następująca: poprawić błędny odnośnik w publikacji, następnie zabezpieczyć stare adresy przekierowaniami, a dopiero później analizować ewentualne problemy indeksowania. Jeśli poprawnie działający adres ma polskie znaki, jego zmiana wyłącznie z powodów estetycznych nie jest priorytetem.
FAQ – najczęstsze pytania o adresy z polskimi znakami
Czy link zawierający „ą”, „ę”, „ł” lub „ź” jest poprawny?
Tak. Współczesne przeglądarki obsługują adresy zawierające znaki Unicode. Warunkiem poprawnego działania jest zgodność zakodowanej ścieżki z konfiguracją serwera i systemu publikacyjnego.
Czy zapis %C5%82 oznacza, że link został uszkodzony?
Nie. To prawidłowa reprezentacja litery „ł” w kodowaniu UTF-8. Błąd występuje dopiero wtedy, gdy zakodowany adres prowadzi do niewłaściwego zasobu lub nie jest rozpoznawany przez serwer.
Czy adresy /lodz i /łódź prowadzą do tej samej strony?
Nie muszą. To dwie różne ścieżki. Mogą prowadzić do jednej podstrony tylko wtedy, gdy witryna została odpowiednio skonfigurowana.
Czy przekierowanie 301 rozwiązuje każdy problem z polskimi znakami?
Nie. Pomaga przy trwałej zmianie adresu, ale nie naprawi błędnego odnośnika do obcej domeny ani problemów wynikających z nieprawidłowego kodowania podczas publikacji.
Co sprawdzić jako pierwsze, gdy link nie działa po publikacji?
Skopiuj rzeczywisty adres odnośnika z opublikowanej strony i porównaj go z adresem działającej podstrony. Następnie otwórz go w trybie prywatnym i sprawdź końcową odpowiedź HTTP. Jeśli ścieżki się różnią, najpierw popraw adres przypisany do linku, zamiast zmieniać konfigurację całej witryny.
Więcej informacji na: https://cmpress.pl
