Fehler in der Suche wenn kein Treffer

  • Affected Version
    WoltLab Suite 5.2

    Hallo,


    wie ich gerade bemerkte gibt es in unserem Forum einen Fehler mit der Suche, der sich darin äussert dass es unter bestimmten Voraussetzungen 404 vom Webserver gibt, mit "The requested URL /core/index.php was not found on this server.". Selbiges tritt auf wenn


    - ein nicht angemeldeter User die Suche verwendet

    oder

    - ein angemeldeter User einen Suchbegriff verwendet welcher _keinen_ Treffer erzeugt. (Ist die Suche erfolgreich, dann funktioniert alles prima)


    leider ist nicht nachvollziehbar seit wann das Problem besteht, es hat aber mal funktioniert :) Webserver logs sind alle unauffällig, das Forum zeigt auch keine Fehler an, unter "Anzeigen aktualisieren" habe ich alles angeklickt. Eigentlich war meine Vermutung, dass es sich um ein Rechteproblem handelt - ich kann aber keine Einstellungen bzgl Suche finden die damit zusammenhängen könnten.


    Was kann das sein? :)

  • Ja, das war in der Tat das Problem. Unser Admin meinte dazu:


    "es ist aus der Sicht Web Service Operator keine gute Idee, auf Application Layer eine Benutzereingabe im Suchfeld mit einem Protokoll HTTP-Error 404 zu beantworten, um danach in der Application noch eine schöne Page für den Benutzer ganz normal auszuliefern. Protokollfehler wie "404 not found" sind dafür da, dass die angefragte Ressource oder Datei auf dem Webservice nicht vorhanden ist, und nicht, um die 0 Treffer bei einer Suche anzuzeigen"


    Wäre schön wenn das in einer kommenden Version geändert würde - ich sehe da ehrlich gesagt auch keinen guten Grund für dass "Keine Treffer" einen 404 auslösen muss, das geht sicher sauberer :)

    • Official Post

    Unser Admin meinte dazu: […]

    Und liegt dabei leider nicht ganz richtig, denn es gibt da noch diese Kleinigkeit namens "Soft-404", bei denen Seiten auf Basis von Filter-Kriterien keine Inhalte anzeigen und trotzdem einen HTTP 200 zurückgeben. Suchmaschinen wie bspw. Google reagieren äußerst allergisch darauf und kreiden dies regelmäßig an.


    Der Status-Code liefert Meta-Informationen über die Resource unabhängig vom tatsächlichen Body. Ein gutes Beispiel dafür ist der Wartungsmodus, der in großen Teilen zwar Inhalte für Nutzer unzugänglich macht, dabei aber parallel konsequent einen HTTP 503 sendet. Das System ist einfach, für Suchmaschinen bedeutet dies eine vorrübergehende Unerreichbarkeit der Seite ohne Abstrafung im Index, während Nutzer regulär die Oberfläche sehen.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!