404-Seite wird nicht angezeigt

  • Hallo zusammen,


    bei all meinen J4-Installationen wird bei einer falschen URL keine 404-Seite mehr angezeigt, sondern immer auf die Startseite umgeleitet. Bei J3 bestand das Problem nicht. Das Problem tritt bei allen Templates auf, es muss also m.E. ein Joomla-Ding sein. Sobald ich in der Konfiguration URL-Rewrite deaktiviere (was allerdings keine wirkliche Option ist), funktioniert es. Hat jemand eine Idee, was ich tun kann?


    In der .htaccess nutze ich für die SEF-Einstellungen die standardmäßig mit Joomla gelieferten.


    Danke!

  • Mich verwundert ein wenig, dass du explizit den Inhalt aus der .htaccess angibst. Warum dann aber nicht komplett, sondern nur ein kleiner Ausschnitt?

    Nutzt du die aktuelle Version (Beispiel htaccess.txt aus Joomla 4.0.5)?


    Nutzt du ein SEO-Tool, oder die Umleitungskomponente oder steht da ein entsprechender Eintrag in der .htaccess?


    Link zur Seite könnte zur Analyse nützlich sein!


    Bei mir wird bei einer falschen URL die 404-Seite des Hosters angezeigt, also zumindest keine Weiterleitung zur Startseite.

  • Hi, danke für deine schnelle Antwort!


    kein SEO-Tool, Umleitungskomponente auch nicht. Ich habe die .htaccess um einige sicherheitsrelevante und browercachebezogene Einträge erweitert. Daran liegt es jedoch definitiv nicht, denn das Problem tritt auch auf, wenn ich testweise nur die originale Datei (htaccess.txt) verwende.


    Hier mal zwei beispielhafte Links:

    naturstein-wachsmuth.de

    saxomes.de


    Danke für eure Mühe!

  • Gerade mal mit Joomla 4.0.5 getestet und Cassiopeia verwendet:

    In SEO-Konfiguration die ersten beiden Haken gesetzt, .htaccess aktiviert und nicht-bestehende URL aufgerufen. Da wird ein 404 zurückgegeben und im Inhaltsbereich entsprechender Text angezeigt.


    Und wenn ich das Umleitungsplugin aktiviere, werden die 404-Seiten auch gesammelt.


    Mischt sich da eventuell JCH OPtimize bei dir ein, welches du verwendest? Keine Ahnung! Wäre mir jetzt nicht bewusst, dass das Tool etwas derartiges kann.

  • ;)^^ war doch nur ein Witz...


    JCH OPtimize ist es eher nicht, sonst würde es bei Deaktivierung des Plugin ja eine Veränderung geben. Ich habe dort auch keine Einstellung gefunden, die das Routing beeinflussen könnte.

    Gruß Dirk

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von WM-Loose mit diesem Beitrag zusammengefügt.

  • Danke für eure Vorschläge. Folgendes habe ich nochmals getestet:

    • JCH Optimize an/aus ohne Effekt
    • Cassiopeia statt Helix Ultimate ohne Effekt
    • ErrorDocument 404 Eintrag in .htaccess ja/nein ohne Effekt
    • Weiterleitungskomponente und -plugin an/aus ohne Effekt
    • Eintrag in error.php des Templates ohne Effekt:
      • if (($this->error->getCode()) == '404') {
        header('Location: /meine-eigene-fehlerseite'); exit; }
    • Verwendung der mit J4 gelieferten .htaccess, ohne daran irgendetwas zu ändern, statt meiner ergänzten .htaccess ohne Effekt
    • tritt bei verschiedenen Hostern auf


    Ich bin ratlos. Hat jemand noch Ideen?

  • Es gab kürzlich einen Thread mit Ähnlichem und auch da war SP beteiligt: Custom Error Page

    Eine Lösung gabs da allerdings nicht, weil TE die Idee, dass es was mit dem SP-Zeugs zu tun haben könnte, ablehnte, sozusagen. Meine Tests mit seinen Codes waren alle OK.


    Ich weiß halt nur, dass diese SP-Geschichten sich so tief einwanzen in Joomla, dass es alleine mit Umschalten des Templates und ähnliche Aktionen meist nicht getan ist, um rauszubekommen, ob es daran liegen könnte.

    Ich könnte ja noch mal 'ne Testinstallation ohne Page Builder machen.

    Das wäre mal eine dufte Idee, damit man mal weiß...


    Ich kann nur sagen, dass ich die letzten Tage beim Überarbeiten von paar error.php-Dateien keinerlei Fehlverhalten mit JCHOptimize und anderen entdecken konnte. SPPagebuilder habe ich halt nirgends so richtig im Einsatz, lediglich mal zuinstalliert auf Testseiten.


    Es kann ja auch eines der zugehörigen "Module" (oder wie man das da beim Builder nennt) sein.

  • Danke für eure Hinweise und auch Link zum ähnlichen Thread. Die dort gemachten Vorschläge habe ich getestet:


    1.

    Code
    $app->redirect('/index.php?option=com_sppagebuilder&view=page&id=7', 404);

    Funktioniert nicht. Auch nicht mit komplettem Verzeichnisbaum.


    2. Auch

    Code
    defined ('_JEXEC') or die();
    
    header("HTTP/1.0 404 Not Found");
    echo file_get_contents(JURI::root().'index.php?option=com_sppagebuilder&view=page&id=7');

    ohne Auswirkung.


    3. Ebenso deaktivieren der Template-error.php, um so die Standard-error-php in /templates/system zu nutzen ohne Erfolg.



    Üblicherweise habe ich folgenden Code in der Template-error.php:

    Code
    defined ('_JEXEC') or die();
    
    if (($this->error->getCode()) == '404') {
        header('Location: /index.php?option=com_sppagebuilder&view=page&id=7');
        exit;
    }

    bzw. nur den Menu-Alias der eigenen 404-Seite.


    Ich probiere die Testinstallation ...

  • Hallo zusammen,


    schneller als gedacht ein Ergebnis: Die Vermutungen bzgl. SP Page Builder haben sich wohl bestätigt.


    Es läuft alles bestens, redirects in .htaccess funktionieren etc. - bis zu dem Punkt, an dem ich eine SPPB-Seite als Standard-/Startseite festlege. Dann werden alle 404 auf diese Seite umgeleitet. Sobald ich wieder eine andere Seite als Startseite festlege, wird die Template- bzw. eine andere festgelegte 404-Seite angezeigt.


    Kennt sich zufällig jemand aus, ob und wo ich beim SPPB welche Zeile Code anpassen kann? Den Support von Joomshaper habe ich kontaktiert, bin gespannt, was man dort erwidert. Bislang war man dort der Meinung, es läge an meiner .htaccess und kam gar nicht auf die Idee mit dem Page Builder. :rolleyes:


    Viele Grüße in die Runde!