Was sind HTTP-Statuscodes?
HTTP-Antwortstatuscodes zeigen an, ob eine bestimmte HTTP-Anfrage erfolgreich abgeschlossen wurde. Es gibt viele Statuscodes, aber nur einige wenige sind im SEO-Kontext relevant.
Schauen wir sie uns nun an.
200
Der HTTP 200 OK
-Erfolgsstatuscode zeigt an, dass die Anfrage erfolgreich war.
Damit eine Seite von Google indexiert werden kann, muss sie den Statuscode 200
zurückgeben. Dies ist der Code, den Sie typischerweise für Ihre Seiten anstreben sollten, um organischen Traffic zu erhalten. Dies ist der Standardcode, der von Next.js gesetzt wird, wenn eine Seite erfolgreich gerendert wird.
301/308
Der HTTP 301 Moved Permanently
-Weiterleitungsstatuscode zeigt an, dass die angeforderte Ressource dauerhaft an die Ziel-URL verschoben wurde.
Dies ist eine permanente Weiterleitung. Im Allgemeinen ist dies der am häufigsten verwendete Weiterleitungstyp.
Weiterleitungen können aus verschiedenen Gründen verwendet werden, aber der Hauptgrund ist, anzuzeigen, dass eine URL von Punkt A nach Punkt B verschoben wurde. Weiterleitungen sind notwendig, um sicherzustellen, dass Sie bei einer Inhaltsverschiebung keine aktuellen und potenziellen Kunden verlieren und dass Bots Ihre Website weiterhin indexieren können.
Hinweis: Next.js verwendet standardmäßig permanente Weiterleitungen mit 308 statt 301, da dies die neuere Version ist und als die bessere Option gilt.
Der Hauptunterschied zwischen den beiden Statuscodes besteht darin, dass ein 301
das Ändern der Anfragemethode von POST
zu GET
erlaubt, während ein 308
dies nicht tut.
Sie können eine 308
-Weiterleitung in Next.js auslösen, indem Sie in der getStaticProps()
-Funktion eine Weiterleitung anstelle von Props zurückgeben.
Sie können auch den permanent: true
-Schlüssel in Weiterleitungen verwenden, die in next.config.js
festgelegt sind.
302
Der HTTP 302 Found
-Weiterleitungsstatuscode zeigt an, dass die angeforderte Ressource vorübergehend an die Ziel-URL verschoben wurde.
In den meisten Fällen sollten 302
-Weiterleitungen 301
-Weiterleitungen sein. Dies könnte anders sein, wenn Sie Benutzer vorübergehend auf eine bestimmte Seite weiterleiten (z.B. eine Promotionsseite) oder wenn Sie Benutzer basierend auf ihrem Standort weiterleiten.
404
Der HTTP 404 Not Found
-Client-Fehlerstatuscode zeigt an, dass der Server die angeforderte Ressource nicht finden kann.
Wie oben erwähnt, sollten verschobene Seiten mit einem HTTP 301
-Statuscode an den neuen Standort weitergeleitet werden. Wenn dies nicht geschieht, können URLs einen 404
-Statuscode zurückgeben. 404
-Statuscodes sind nicht per se schlecht, da dies das gewünschte Ergebnis ist, wenn ein Benutzer eine nicht existierende URL besucht, aber sie sollten nicht häufig auf Ihren Seiten auftreten, da dies zu schlechteren Suchrankings führen könnte.
Next.js gibt automatisch einen 404
-Statuscode für URLs zurück, die in Ihrer Anwendung nicht existieren.
In einigen Fällen möchten Sie möglicherweise auch einen 404
-Statuscode von einer Seite zurückgeben. Sie können dies tun, indem Sie Folgendes anstelle von Props zurückgeben:
Sie können eine benutzerdefinierte 404-Seite erstellen, die statisch zur Build-Zeit generiert wird, indem Sie pages/404.js
erstellen.
Beispiel:
410
Der HTTP 410 Gone
-Client-Fehlerstatuscode zeigt an, dass der Zugriff auf die Zielressource auf dem Ursprungsserver nicht mehr verfügbar ist und dass dieser Zustand wahrscheinlich dauerhaft ist.
Dies wird nicht sehr oft verwendet, aber Sie sollten nach diesem Statuscode Ausschau halten, wenn Sie Inhalte auf Ihrer Website löschen, die nicht mehr existieren werden.
Beispiele, bei denen ein HTTP 410 Gone
sinnvoll sein könnte:
- E-Commerce: Dauerhaft aus dem Sortiment entfernte Produkte.
- Forum: Vom Benutzer gelöschte Threads.
- Blog: Von der Website entfernte Blogbeiträge.
Dieser Statuscode teilt Bots mit, dass sie diesen Inhalt nie wieder crawlen sollten.
500
Der HTTP 500 Internal Server Error
-Antwortcode zeigt an, dass der Server auf eine unerwartete Bedingung gestoßen ist, die ihn daran hinderte, die Anfrage zu erfüllen.
Next.js gibt automatisch einen 500
-Statuscode für einen unerwarteten Anwendungsfehler zurück. Sie können eine benutzerdefinierte 500
-Fehlerseite erstellen, die statisch zur Build-Zeit generiert wird, indem Sie pages/500.js
erstellen.
Beispiel:
503
Der HTTP 503 Service Unavailable
-Server-Fehlerstatuscode zeigt an, dass der Server nicht bereit ist, die Anfrage zu bearbeiten.
Es wird empfohlen, diesen Statuscode zurückzugeben, wenn Ihre Website nicht verfügbar ist und Sie vorhersagen, dass die Website für einen längeren Zeitraum nicht verfügbar sein wird. Dies verhindert langfristige Rankingverluste.