Co powinno się stać po usunięciu treści?

9

Zastanawiam się nad standardową obsługą usuniętych łączy danych z aplikacji i perspektywą SEO.

Mam aplikację, w której użytkownicy mogą tworzyć treści, ale mogą też usuwać treści. Jaki jest najlepszy sposób obsługi ruchu przychodzącego do linków, które zostały usunięte?

Czy powinienem przekierować je gdzieś za pomocą 301, czy powinienem rzucić inny błąd i po prostu zostawić stronę taktowaną z komunikatem o błędzie?

Yasin Okumuş
źródło
Zgłosiłem to do migracji
John Conde

Odpowiedzi:

8

Jeśli strona nie zostanie zastąpiona nową treścią, wyślij komunikat o statusie 410 GONE HTTP, który informuje wyszukiwarki, że strona już nie istnieje. Poproś, aby treść strony poinformowała użytkownika, dlaczego strona zniknęła, i przekaże mu opcje znalezienia istniejącej zawartości w Twojej witrynie. Powinno to prowadzić do Twojej strony głównej, mapy witryny (jeśli istnieje), strony wyszukiwania (jeśli istnieje) oraz linków do podobnej treści (jeśli taka treść istnieje).

John Conde
źródło
1
Chcę ostrzec, aby nie oznaczać jako naprawionego błędu 404 w Narzędziach Google dla webmasterów strony, która nie istnieje. Mówisz Google, że strona nie istnieje i że problem został rozwiązany i Google powinien spróbować ponownie. Jeśli po prostu go opuścisz, z czasem zniknie. Google ponownie spróbuje 404 błędów kilka razy, zanim się podda.
closetnoc
5

Sugestia Johna Conde'a o zwróceniu kodu statusu HTTP 410 Gone jest dobra, ale w zależności od okoliczności bardziej odpowiedni może być zwykły stary brak HTTP 404 .

W szczególności kod statusu HTTP 410 ma na celu zasygnalizować, że zasób został celowo i trwale usunięty, nie oczekuje się, że zostanie zwrócony, i że łącza do niego powinny zostać usunięte. Wyszukiwarki mogą traktować to jako sygnał do usunięcia z listy treści, a nie do ponownego wyświetlenia, nawet jeśli zostaną znalezione nowe linki do niej. Tak więc, jeśli możliwe jest, że użytkownik usunął stronę przez pomyłkę lub z zamiarem zastąpienia jej nową treścią, zwykła stara odpowiedź 404 może być bezpieczniejsza.

W szczególności tak mówi standard HTTP / 1.1 :

10.4.5 404 Nie znaleziono

Serwer nie znalazł nic pasującego do URI żądania. Nie podano żadnych wskazówek, czy stan jest tymczasowy czy trwały. Kod statusu 410 (Zniknął) POWINIEN być użyty, jeśli serwer wie, poprzez jakiś wewnętrznie konfigurowalny mechanizm, że stary zasób jest trwale niedostępny i nie ma adresu przekierowania. Ten kod stanu jest powszechnie używany, gdy serwer nie chce dokładnie wyjaśnić, dlaczego żądanie zostało odrzucone, lub gdy żadna inna odpowiedź nie ma zastosowania.

10.4.11 410 Przeminęło

Żądany zasób nie jest już dostępny na serwerze i nie jest znany adres przekierowania. Oczekuje się, że warunek ten będzie trwały. Klienci z możliwością edycji łącza POWINIEN usunąć odwołania do URI żądania po zatwierdzeniu przez użytkownika. Jeśli serwer nie wie lub nie ma możliwości ustalenia, czy warunek jest trwały, NALEŻY użyć kodu stanu 404 (Nie znaleziono). Ta odpowiedź jest buforowana, chyba że zaznaczono inaczej.

Odpowiedź 410 ma przede wszystkim pomóc w utrzymaniu sieci przez powiadomienie odbiorcy, że zasób jest celowo niedostępny i że właściciele serwerów chcą usunięcia zdalnych łączy do tego zasobu. Takie zdarzenie jest wspólne dla usług promocyjnych o ograniczonym czasie trwania oraz zasobów należących do osób, które nie pracują już na stronie serwera. Nie jest konieczne oznaczanie wszystkich trwale niedostępnych zasobów jako „nieobecne” lub zachowanie znaku przez dowolny okres czasu - zależy to od uznania właściciela serwera.

W każdym razie 404 jest bardziej ogólnym kodem statusu; jeśli masz wątpliwości, czy użyć 404, czy 410, użycie 404 nigdy nie jest złe.

Ilmari Karonen
źródło