Ankündigung

Einklappen
Keine Ankündigung bisher.

404 Status rücksetzen - nach außen unsichtbar machen (Reset Error Status?!)

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 404 Status rücksetzen - nach außen unsichtbar machen (Reset Error Status?!)

    Hallo,
    ich habe schon nach so etwas wie "404 ignorieren / verbergen / reset" gesucht, finde aber dazu nichts.
    Gibt es dafür überhaupt eine Möglichkeit, den 404-Status zurück zu setzen bzw. zu überschreiben?

    Ich habe eine Seite so gebaut, dass sie bei 404 auf die index.php geht und dann anhand des Requests die richtige Seite per include einbettet..
    Auf die Weise kann ich mit Seitenbezeichnungen ohne .html oder .php am Ende arbeiten.

    Das hat aber nun zur Folge, dass etwaige Webcrawler diese Seiten als nicht existent betrachten, weil sie den Status 404 bemerken.
    Ich möchte den 404-Error nur bei wirklich nicht existierenden Seiten haben, aber bei den Seiten, die ich selbst anhand von 404 nachlade, soll er das nicht.

    Daher suche nun nach einer Lösung, wie meine index.php selbst diesen 404-Status wieder zurücksetzt, wenn die Seite - die zum Aufruf gehört, gefunden wurde.

    Ist es möglich den 404-Status zu überschreiben?

  • #2
    Ich habe eine Seite so gebaut, dass sie bei 404 auf die index.php geht und dann anhand des Requests die richtige Seite per include einbettet..
    Auf die Weise kann ich mit Seitenbezeichnungen ohne .html oder .php am Ende arbeiten.
    Das kann man aber auch richtig machen: http://www.php-rocks.de/thema/58-ein...-umsetzen.html


    [MOD: Verschoben von PHP-Einsteiger]
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Das ist unfug. Leite einfach alle Anfragen auf index.php:

      Code:
      RewriteEngine On
      RewriteCond %{REQUEST_FILENAME} -s [OR]
      RewriteCond %{REQUEST_FILENAME} -l [OR]
      RewriteCond %{REQUEST_FILENAME} -d
      RewriteRule ^.*$ - [NC,L]
      RewriteRule ^.*$ index.php [NC,L]
      Quelle: http://framework.zend.com/manual/1.1...er.router.html

      Kommentar


      • #4
        VIELEN DANK hellbringer !!! das funktioniert super! Hast mir ne Menge Arbeit erspart!
        Sonst hätte ich wohl alle Pfade als Verzeichnisse anlegen - und lauter index.php's erstellen müssen...

        Schön, dass es doch anders geht, Danke!

        Kommentar


        • #5
          In dem Link aus #2 findest Du einen Verweis auf FallbackResource, das bringt denselben Effekt und sollte i.d.R. sogar performanter sein ( ob spürbar, lass ich mal dahingestellt )...
          Competence-Center -> Enjoy the Informatrix
          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

          Kommentar

          Lädt...
          X