WordPress 404 Seite leitet auf Startseite um – Wie behebe ich den Fehler?

404 wordpress fehler fixen titelbild
Inhalt

Hintergrund: Multisite und NOBLOGREDIRECT

Wenn bei Ihrer WordPress Multisite nicht vorhandene Seiten (404-Fehlerseiten) automatisch auf die Startseite umgeleitet werden, liegt dies häufig an der Einstellung NOBLOGREDIRECT in der wp-config.php-Datei. Hier finden Sie eine einfache Lösung, um das Standardverhalten so zu ändern, dass die reguläre 404-Fehlerseite Ihres Themes angezeigt wird.

Was ist NOBLOGREDIRECT?

Die Einstellung define('NOBLOGREDIRECT', '%siteurl%'); in der wp-config.php-Datei steuert das Verhalten, wenn jemand eine nicht existierende Subdomain Ihrer Seite aufruft. Standardmäßig wird der Besucher zur URL weitergeleitet, die Sie unter NOBLOGREDIRECT definiert haben, anstatt eine 404-Seite anzuzeigen. Dies kann nützlich sein, um Besucher an einen bestimmten Ort zu leiten, wenn eine Subdomain nicht existiert. Zum Beispiel könnte eine nicht vorhandene Subdomain wie https://seltsamesubdomain.tikoim.de/ auf die Startseite oder eine FAQ-Seite umgeleitet werden.

Problem mit der Umleitung

Das eigentliche Problem tritt auf, wenn NOBLOGREDIRECT nicht nur für Subdomains, sondern auch für reguläre Seitenaufrufe auf der Hauptseite verwendet wird. Das bedeutet, dass auch normale 404-Fehlerseiten (z. B. https://tikoim.de/dieSeiteexistiertNicht/) automatisch zur in NOBLOGREDIRECT definierten URL umgeleitet werden, anstatt die eigentliche 404-Fehlerseite anzuzeigen. Dies erschwert das Tracking und die Verwaltung von nicht vorhandenen Seiten und kann die Benutzererfahrung beeinträchtigen.

Lösung: Deaktivierung der automatischen 404-Umleitung

Um dieses Verhalten zu ändern und wieder die reguläre 404-Fehlerseite anzuzeigen, können Sie eine benutzerdefinierte PHP-Datei in das Verzeichnis mu-plugins Ihrer WordPress-Installation einfügen:

  1. Erstellen Sie eine neue Datei: Legen Sie im Ordner /wp-content/mu-plugins/ eine Datei namens custom.php an. Falls das Verzeichnis mu-plugins noch nicht existiert, erstellen Sie es manuell.
  2. Inhalt der Datei custom.php: Fügen Sie den folgenden Code in die Datei ein:
<?php
remove_action( 'template_redirect', 'maybe_redirect_404' );

Dieser Code deaktiviert die Funktion maybe_redirect_404, die für die Umleitung verantwortlich ist. Durch das Entfernen dieser Aktion wird das Verhalten so geändert, dass nicht existierende Seiten wie erwartet die 404-Vorlage des Themes nutzen.

Automatische Aktivierung: Die Datei custom.php wird bei jedem Laden der Seite automatisch ausgeführt und sorgt so dafür, dass die 404-Fehlerseiten korrekt auf die entsprechende Vorlage verweisen.

Hinweis zur Verwendung von NOBLOGREDIRECT

NOBLOGREDIRECT ist grundsätzlich nützlich, um Benutzer bei ungültigen Subdomain-Aufrufen an eine gewünschte Stelle weiterzuleiten. Diese Einstellung kann jedoch irreführend sein, da sie dazu führen kann, dass auch reguläre 404-Fehlerseiten auf die Startseite umgeleitet werden. Wenn Sie dieses Verhalten für Ihre Hauptseite nicht wünschen, ist die oben beschriebene Anpassung sinnvoll.

englischsprachige Quelle: NOBLOGREDIRECT explained and fix · GitHub

1 Kommentar
  1. Super! Genau das Problem hatte ich auch mit meiner WordPress-Seite. Die Lösung mit der „custom.php“-Datei hat geholfen. Vorher bin ich bei 404-Fehlern immer auf die Startseite umgeleitet worden, was total nervig war. 👍

Hinterlasse einen Kommentar

Tikoim.de
Logo
Artikel vergleichen
  • Testergebnis (0)
Vergleichen