Brakujący dokument publiczny powinien wyświetlać jasne wyjaśnienie i zwracać odpowiedni status HTTP, zwykle 404. Na Macu możesz sprawdzić oba te elementy w Chrome, wykryć niezgodność i przekazać systemowi publikacji precyzyjne wskazówki dotyczące poprawki.
Ten proces jest przeznaczony dla osób utrzymujących publiczne strony z dokumentami: poradnikami, notatkami referencyjnymi lub prostymi instrukcjami. Jego celem jest zapewnienie zgodności żądanego adresu, odpowiedzi serwera i wyświetlanego komunikatu. Wszystkie przykładowe ścieżki poniżej są fikcyjne.
Jaka odpowiedź powinna być zwracana dla brakującego dokumentu?
Najpierw zdecyduj, co powinno się stać pod adresem dokumentu. Strona, która została przeniesiona, wymaga innego działania niż strona, która już nie istnieje. Zanim zmienisz projekt strony błędu, skorzystaj z tej tabeli decyzyjnej.
| Stan dokumentu | Oczekiwana odpowiedź | Co powinni zobaczyć czytelnicy |
|---|---|---|
| Istnieje pod żądanym adresem | 200 OK |
Kompletny dokument |
| Ma wyraźny, trwały zamiennik | Przekierowanie 301 |
Dokument zastępczy pod nowym adresem |
| Nie można go znaleźć i nie ma równoważnego zamiennika | 404 Not Found |
Przydatne wyjaśnienie, że dokumentu brakuje |
| Został celowo usunięty i prawdopodobnie nie wróci | Odpowiedni jest status 410 Gone |
Jasne wyjaśnienie usunięcia i przydatna nawigacja |
HTTP definiuje 404, nie określając, czy brak jest tymczasowy, czy trwały. Status 410 dotyczy zasobu, którego niedostępność prawdopodobnie jest trwała; gdy nie wiadomo, czy brak jest trwały, należy użyć 404. Znaczenie tych statusów opisano w RFC 9110, sekcje 15.5.5 i 15.5.11.
Google zaleca trwałe przekierowanie, gdy dokument został przeniesiony lub ma wyraźny zamiennik. Jeśli został usunięty i nie ma podobnego zamiennika, Google zaleca status 404 lub 410. Zobacz wskazówki Google dotyczące rozwiązywania problemów z odpowiedziami o brakującej treści.
Załóżmy na przykład, że /documents/paper-folding-notes zastąpiono adresem /documents/paper-folding-guide, a instrukcje są zasadniczo równoważne. W takim przypadku odpowiednie będzie trwałe przekierowanie. Jeśli notatki usunięto bez zamiennika, pod starym adresem powinna pozostać odpowiedź informująca o braku dokumentu. Na tej stronie można umieścić link do ogólnego katalogu dokumentów.
Dlaczego przekonujący wygląd strony błędu nie wystarczy
Strona może wyraźnie informować Nie znaleziono dokumentu, podczas gdy serwer zwraca 200. Google określa taką niezgodność mianem soft 404; podobną klasyfikację może też powodować pusta strona lub strona bez głównej treści. Przeczytaj wyjaśnienie Google dotyczące błędów soft 404.
Status jest częścią odpowiedzi HTTP i jest niezależny od treści wyjaśnienia. Dlatego zmiana nagłówka lub dodanie dużej etykiety 404 nie ustali kodu odpowiedzi. Zanim uznasz problem za rozwiązany, sprawdź rzeczywiste żądanie dokumentu. RFC 9110 opisuje rolę kodów statusu odpowiedzi.
Jak sprawdzić odpowiedź dokumentu na Macu?
Do tej kontroli użyj wbudowanych narzędzi Chrome. Przygotuj adres znanego, działającego dokumentu oraz celowo nieistniejącą ścieżkę w tej samej publicznej witrynie. Przykładowa brakująca ścieżka może wyglądać tak: /documents/missing-paper-example-731. Wybierz adres, pod którym na pewno nie opublikowano żadnego dokumentu.
- Otwórz stronę publiczną w Chrome.
- Naciśnij
Command+Option+I, aby otworzyć DevTools. - Wybierz panel
Network. - Gdy DevTools jest otwarte, wpisz testowy adres w pasku adresu i wczytaj stronę.
Skrót klawiszowy na Macu opisano w dokumentacji Chrome: Otwieranie Chrome DevTools. Aktywność sieciowa jest rejestrowana, gdy DevTools pozostaje otwarte, jak wyjaśniono w przeglądzie panelu Network.
- Zaznacz
Disable cache, aby podczas tej kontroli nie korzystać z odpowiedzi zapisanej w pamięci podręcznej przeglądarki. - Włącz
Preserve log, jeśli chcesz śledzić nawigację podczas przekierowań. - Odśwież testowy adres.
- Wybierz główne żądanie dokumentu, a następnie otwórz
Headers. W sekcjiGeneralsprawdź adres żądania i kod statusu.
Te opcje i lokalizację informacji o statusie opisano w dokumentacji funkcji panelu Network w Chrome.
Dokładnie sprawdź żądanie dokumentu. W dzienniku znajdują się też żądania skryptów, arkuszy stylów i innych zasobów. Brak pliku pomocniczego nie dowodzi, że sam dokument zwrócił 404. Tabela żądań Chrome rozróżnia kod HTTP w kolumnie Status i kategorię zasobu w kolumnie Type; zobacz sprawdzanie aktywności sieciowej.
Porównaj teraz trzy obserwacje: pierwotnie żądany adres, kod odpowiedzi dla tego dokumentu i stronę widoczną po wczytaniu. Zapisz je razem. Jeśli nawigacja zmienia adres, sprawdź zarówno pierwotne żądanie, jak i adres docelowy, zamiast zapisywać wyłącznie stronę końcową.
Jak wykorzystać obserwacje do przygotowania poprawki?
Poniższa tabela diagnostyczna łączy w praktyczny sposób znaczenie statusów HTTP ze wskazówkami Google dotyczącymi rozwiązywania problemów. To narzędzie decyzyjne, a nie zestaw zmierzonych wyników.
| Zaobserwowany wynik | Co sprawdzić | Oczekiwana poprawka |
|---|---|---|
200 i komunikat o brakującym dokumencie |
Obsługę brakujących ścieżek lub mechanizm awaryjny | Zwracać 404 wraz z wyjaśnieniem |
404, a oczekiwany dokument jest widoczny |
Odpowiedź przypisaną do istniejącej ścieżki | Udostępniać dokument z kodem 200 |
| Przekierowanie do ogólnego katalogu | Czy istnieje równoważny zamiennik | Przekierować do równoważnego dokumentu albo wyświetlić stronę informującą o jego braku |
200 i pusta lub niekompletna strona |
Wczytywanie i renderowanie treści | Przywrócić oczekiwaną treść, jeśli dokument nadal istnieje |
404 i przydatny komunikat o brakującej stronie |
Czy adres rzeczywiście jest nieaktywny | Zachować to działanie, jeśli brak jest zamierzony |
Dokumentacja Google dotycząca rozwiązywania problemów wyraźnie odróżnia dokumenty niedostępne, przeniesione oraz wciąż istniejące, ale nieprawidłowo się wczytujące. To rozróżnienie zapobiega traktowaniu niekompletnej, działającej strony jako celowo usuniętej. Zobacz rozwiązywanie problemów z błędami indeksowania w Google Search.
Przykładowe konkretne zgłoszenie może brzmieć: „Dla fikcyjnej brakującej ścieżki /documents/missing-paper-example-731 zwracaj 404 i wyświetlaj pod tym adresem niestandardową stronę informującą o braku dokumentu. Zachowaj poprawne działanie istniejących ścieżek dokumentów. Stosuj trwałe przekierowania wyłącznie wtedy, gdy wskazano równoważny zamiennik”. Dodaj zaobserwowany status i widoczny komunikat z przeprowadzonej kontroli.
Tak sformułowana prośba opisuje wymagane działanie bez zgadywania nazw opcji w panelu wydawcy. Implementację należy wprowadzić w konfiguracji hostingu, trasie aplikacji lub systemie publikacji generującym odpowiedź. Google wyjaśnia w swojej dokumentacji kodów statusu HTTP, że kody te generuje serwer hostujący.
Co zrobić, jeśli edytor pozwala zmieniać tylko treść strony?
Edytor służący do zmiany tekstu lub metadanych dokumentu może nie dawać kontroli nad odpowiedziami HTTP. Standard HTML WHATWG określa konkretne zachowania dyrektyw meta używających http-equiv; ustawianie statusu odpowiedzi HTTP nie należy do tych zachowań. Dodanie http-equiv="status" nie jest więc obsługiwanym sposobem na utworzenie 404. Zobacz Standard HTML: dyrektywy pragma.
Jeśli edytor nie udostępnia kontroli nad odpowiedziami, skorzystaj z udokumentowanego mechanizmu brakujących stron na poziomie hostingu lub aplikacji. Sprawdź, czy niestandardowa treść jest udostępniana pod żądanym brakującym adresem ze statusem 404. Samo ustawienie układu strony błędu nie odpowiada na to pytanie; sprawdź rezultat zgodnie z opisanym procesem w przeglądarce.
Udokumentowany przykład dla stron statycznych w Netlify
W przypadku istniejącej witryny statycznej w Netlify udokumentowanym rozwiązaniem jest plik o nazwie 404.html. Netlify automatycznie używa go dla nieudanych ścieżek, które nie prowadzą do pliku statycznego. Jest to przykład właściwy dla konkretnego dostawcy i wymaga dostępu do gotowego wyjścia witryny oraz istniejącego procesu budowania stron statycznych. Netlify opisuje obsługę niestandardowego błędu 404.
- Użyj istniejącego szablonu strony, aby utworzyć stronę informującą o braku dokumentu.
- Upewnij się, że gotowe wyjście zawiera plik
404.htmlw katalogu publikacji. - Sprawdź, czy wcześniejsza reguła routingu nie kieruje nieznanych adresów na inną stronę.
- Gdy zmienione wyjście będzie dostępne pod publicznym adresem, sprawdź zarówno brakującą ścieżkę, jak i działający dokument.
Kontrola routingu jest istotna, ponieważ Netlify przetwarza routing przed obsługą plików statycznych i końcową obsługą brakujących stron. Żądanie obsłużone wcześniej nie dotrze do tego ostatniego mechanizmu. Dokumentacja łańcucha żądań opisuje kolejność przetwarzania. Ten przykład przedstawia sposób wprowadzenia poprawki; nie oznacza, że zmieniono jakąkolwiek witrynę.
Ograniczenia aplikacji korzystających z routingu po stronie przeglądarki
Niektóre aplikacje wykrywają brak dokumentu dopiero po uruchomieniu JavaScriptu. Google przyznaje, że w przypadku routingu po stronie klienta zwracanie znaczących kodów statusu może być trudne. Wskazane w dokumentacji rozwiązania to przekierowanie JavaScript do adresu, którego serwer zwraca 404, albo dodanie metadanych noindex do strony błędu. Zobacz wskazówki Google dotyczące SEO w JavaScript.
Te rozwiązania dają różne rezultaty. Przekierowanie prowadzi do nowego adresu z prawidłową odpowiedzią informującą o braku strony. Metadane dotyczą indeksowania, ale nie zmieniają pierwotnego statusu HTTP. Jeśli wymagane jest zachowanie pierwotnego adresu dokumentu i zwracanie pod nim 404, hosting lub aplikacja muszą obsługiwać takie zachowanie.
Co powinna zawierać strona informująca o braku dokumentu?
Użyj krótkiego, konkretnego komunikatu, na przykład Nie można znaleźć tego dokumentu. Następnie wskaż jedno przydatne działanie: link do katalogu dokumentów lub innego sprawdzonego miejsca w nawigacji. Zachowaj znaną czytelnikom nawigację i wygląd witryny. Google zaleca jasny język, spójny projekt i przydatne linki na niestandardowych stronach błędu.
W przypadku fikcyjnego przykładu z papierowym składaniem odpowiedni tekst mógłby brzmieć: Nie udało nam się znaleźć tego dokumentu o składaniu papieru. Przejdź do katalogu dokumentów, aby wybrać inny poradnik. Informuj o trwałym usunięciu dokumentu tylko wtedy, gdy jest to pewne. Zamiast natychmiast przekierowywać wszystkie brakujące adresy, pozostaw wyjaśnienie widoczne na stronie.
Jak sprawdzić, czy odpowiedź i strona są zgodne?
Powtórz kontrolę dla niewielkiego zestawu porównawczego. Poniższe oczekiwane wyniki są przykładowymi kryteriami akceptacji, a nie rezultatami przeprowadzonych testów.
| Przypadek testowy | Oczekiwana odpowiedź i strona |
|---|---|
| Znany, działający dokument | 200 i kompletny dokument |
| Celowo nieistniejąca ścieżka | 404 i wyjaśnienie, że brakuje dokumentu |
| Usunięty dokument bez zamiennika | 404 lub, gdy to właściwe, 410, oraz rzetelne wyjaśnienie |
| Przeniesiony dokument z równoważnym zamiennikiem | Trwałe przekierowanie, a następnie poprawna odpowiedź dla dokumentu zastępczego |
Sprawdź ponownie każdy adres, wpisując go bezpośrednio i odświeżając stronę, również w przypadku dokumentów zwykle otwieranych za pomocą nawigacji na stronie. Pozwoli to sprawdzić odpowiedź otrzymywaną przy nowym żądaniu dokumentu. Zapisuj razem adres, kod i widoczny wynik, aby poprawna strona docelowa nie przesłoniła błędnej wcześniejszej odpowiedzi w trakcie nawigacji.
Jeśli stary wynik nadal się pojawia, odróżnij pamięć podręczną przeglądarki od innych pamięci podręcznych. Wyłączenie pamięci podręcznej Chrome wpływa na pamięć przeglądarki. Buforowanie HTTP może obejmować także negatywne odpowiedzi, takie jak 404, dlatego w przypadku nieaktualnej odpowiedzi o braku strony może być konieczne sprawdzenie udokumentowanego sposobu obsługi pamięci podręcznej w systemie publikacji. RFC 9111 wyjaśnia, że odpowiedzi negatywne mogą być buforowane.
W Google Search prawdziwa odpowiedź informująca o braku dokumentu ma określone konsekwencje: Google nie indeksuje adresów URL zwracających 404 lub 410, a wcześniej zaindeksowane adresy URL są usuwane w miarę przetwarzania takich odpowiedzi. Poprawna odpowiedź 200 również nie gwarantuje indeksowania. Zobacz wpływ kodów statusu HTTP na roboty Google.
Zakończ kontrolę, gdy każdy z testowanych adresów daje spójny rezultat: dostępne dokumenty wczytują się poprawnie, przeniesione dokumenty prowadzą do swoich zamienników, a brakujące dokumenty zwracają odpowiednią odpowiedź i oferują przydatną nawigację. Dzięki temu na Macu zyskasz konkretny, powtarzalny sposób sprawdzania procesu publikacji.
Źródła
- RFC 9110: Semantyka HTTP — RFC Editor
- RFC 9111: Buforowanie HTTP — RFC Editor
- Standard HTML: dyrektywy pragma — WHATWG
- Rozwiązywanie problemów z błędami indeksowania w Google Search — Google Search Central
- Wpływ kodów statusu HTTP na roboty Google — Google for Developers
- Poznaj podstawy SEO w JavaScript — Google Search Central
- Otwieranie Chrome DevTools — Chrome for Developers
- Panel Network: analiza obciążenia sieci i zasobów — Chrome for Developers
- Dokumentacja funkcji panelu Network — Chrome for Developers
- Sprawdzanie aktywności sieciowej — Chrome for Developers
- Opcje przekierowań — Netlify
- Łańcuch żądań — Netlify