Nowoczesne przeglądarki mają implementację HTTP Protocol idealnie zbliżoną do standardu, taką samą dla serwerów proxy, które należy wziąć pod uwagę, jeśli chcesz mieć wpływ na ruch użytkownika i nieautentyczny bot. Obecny version is 1.1, niektóre fragmenty:
10,4 Client Error 4xx
Klasa 4xx kod stanu jest przeznaczony dla przypadków, w których klient wydaje się, że popełnił błąd. Z wyjątkiem sytuacji, gdy odpowiada na żądanie HEAD, serwer POWINIEN zawierać obiekt zawierający wyjaśnienie sytuacji błędu i to, czy jest to stan tymczasowy czy stały. Te kody stanu mają zastosowanie do każdej metody żądania. Aplikacje użytkownika POWINIEN wyświetlać użytkownikowi dołączoną całość.
Jeśli klient wysyła dane, wdrożenie serwera przy użyciu protokołu TCP POWINIEN być ostrożnym, aby upewnić się, że klient potwierdza odbiór pakietu (ów) zawierającego odpowiedź, zanim serwer zamknie połączenie wejściowe. Jeśli klient kontynuuje wysyłanie danych do serwera po zamknięciu, stos TCP serwera wyśle pakiet resetowania do klienta, który może usunąć niepotwierdzone bufory wejściowe klienta, zanim zostaną one odczytane i zinterpretowane przez aplikację HTTP.
Dokładniej na 404:
10.4.5 404 Not Found
Serwer nie znaleziono niczego dopasowanie Request-URI. Nie podano, czy warunek jest tymczasowy czy trwały. Kod stanu 410 (Gone) POWINIEN być użyty, jeśli serwer wie, poprzez jakiś mechanizm konfigurowalny wewnętrznie, że stary zasób jest trwale niedostępny i nie ma adresu przekierowania. Ten kod statusu jest powszechnie używany, gdy serwer nie chce ujawnić dokładnie, dlaczego odmówiono podania lub gdy nie ma zastosowania żadna inna odpowiedź.
Tyle za kod odpowiedzi 404.
Pytałeś:
teraz [my] zastanawiasz się czy zasobów Jesteśmy przekonani są nieprawidłowe, należy wysłać odpowiednie nagłówki cache?
Nie podano żadnych konkretnych nagłówków pamięci podręcznej, których chcesz użyć, więc odpowiedź na to pytanie jest nieco nieprecyzyjna. Buforowanie to sekcja w specyfikacji protokołu: 13 Caching in HTTP.
Ogólnie dodaje powinny być co szukasz, wypis z 13.1.1 Cache Correctness:
Prawidłowe cache musi odpowiedzieć na wezwanie z większości odpowiedzi up-to-date posiadanych przez cache, który jest odpowiedni na żądanie (patrz punkt 13.2.5, 13.2.6 i 13.12), która spełnia jeden z następujących warunków:
...
3. It is an appropriate 304 (Not Modified), 305 (Proxy Redirect),
or error (4xx or 5xx) response message.
Dzięki temu można buforować komunikaty odpowiedzi 404 i przesyłać je do pamięci podręcznej. Proxy i Klienci powinni się z tym uporać.
Podaj nazwę ustawionych nagłówków pamięci podręcznej i sposób ich używania. – hakre