410 Gone
Verwendung
Wenn die Fehlermeldung 410 Gone eintrifft, weiß der Client, dass die Adresse einmal gültig war, die Ressource jedoch nicht mehr existiert. Dies ist die Antwort, die zurückgegeben wird, nachdem eine Ressource abgelaufen ist, etwa ein Dokument, das als Teil eines zeitlich begrenzten Angebots bereitstand. Erwartet der Server nicht, dass die Entfernung dauerhaft ist, wird stattdessen 404 verwendet.
Dieser Statuscode ist für die Websitepflege hilfreich und signalisiert Clients, Links auf die Ressource zu entfernen. Die Antwort ist standardmäßig zwischenspeicherbar. Clients und Vermittler speichern die 410 auch ohne explizite Cache-Control-Direktiven. Wohlerzogene Clients wiederholen die Anfrage nicht, anders als bei 404, wo ein späterer Versuch Erfolg haben kann.
Häufige Anwendungsfälle sind abgelaufene Werbeaktionen, eingestellte API-Endpunkte und dauerhaft entfernte Archivinhalte.
SEO-Auswirkung
Suchmaschinen wie Google indexieren eine URL mit dem Antwortstatus 410 nicht. Zuvor indexierte URLs werden aus den Suchergebnissen entfernt. Seiten, die diesen Code zurückgeben, verbrauchen kein Crawl-Budget. Google behandelt 404 und 410 identisch. Beide entfernen Inhalte mit derselben Geschwindigkeit aus dem Index. Eine 200 mit Fehlerinhalt zurückzugeben oder gelöschte URLs auf die Startseite weiterzuleiten, statt mit 410 zu antworten, erzeugt einen Soft 404, der Crawl-Budget verschwendet und das Vertrauen in die Serversignale der Website untergräbt.
Beispiel
Der Client fordert eine Ressource an, und der Server antwortet mit 410 Gone, weil die Werbeaktion beendet und der Inhalt nicht mehr verfügbar ist.
Anfrage
GET /holiday-promotion-Jan-2021.pdf HTTP/1.1
Host: example.com
Antwort
HTTP/1.1 410 Gone
Content-Type: text/html
Content-Length: 133
<html>
<head>
<title>Promotion Expired</title>
</head>
<body>
<p>The promotional period has ended.</p>
</body>
</html>
Behebung
Wenn eine 410 unerwartet auftritt, prüfen Sie die Serverkonfigurationsdateien auf unbeabsichtigte Regeln. Suchen Sie bei Apache in httpd.conf und .htaccess nach RewriteRule-Einträgen mit dem Flag [G] (Gone) oder nach Redirect-gone-Direktiven. Suchen Sie bei nginx in der Serverkonfiguration nach return 410 innerhalb von location-Blöcken. CMS-Plugins und kürzlich durchgeführte Upgrades fügen manchmal ohne Vorwarnung 410-Regeln hinzu. Deaktivieren Sie kürzlich installierte Plugins, um die Ursache einzugrenzen.
Ist die Entfernung beabsichtigt, aktualisieren Sie die Sitemaps, um die URL auszuschließen, und entfernen Sie interne Links, die auf die Ressource verweisen.
In WordPress verwalten Plugins wie Redirection oder Yoast SEO 410-Antworten über die Administrationsoberfläche, ohne dass Serverdateien direkt bearbeitet werden müssen.
Ist die Entfernung unbeabsichtigt, stellen Sie die Ressource oder ihren Ersatz wieder her und geben Sie 200 zurück. Existiert eine Ersatzseite unter einer anderen URL, ist eine 301-Weiterleitung angemessener als eine 410.
Code-Referenzen
.NET
HttpStatusCode.Gone
Rust
http::StatusCode::GONE
Rails
:gone
Go
http.StatusGone
Symfony
Response::HTTP_GONE
Python3.5+
http.HTTPStatus.GONE
Java
java.net.HttpURLConnection.HTTP_GONE
Apache HttpComponents Core
org.apache.hc.core5.http.HttpStatus.SC_GONE
Angular
@angular/common/http/HttpStatusCode.Gone