url mit angehängten Slash ergeben "falsche Seiten"

  • Hallo Zeta-Spezis

    Ich habe wieder mal ein komisches Problem.

    In der Search-Console sind mir folgende Seiten "ausgeschlossen" worden, von denen ich keine Ahnung habe, wie diese entstehen:


    erma.ch/shop-erma-regale.php/betriebliche-sicherheit.php


    Richtig wäre:

    erma.ch/shop-erma-regale.php - so kommt die richtige Seite, wenn aber an die Adresse ein / angehängt wird, (erma.ch/shop-erma-regale.php/) kommt die gleiche Seite, ohne Layout, und alle Links sind genau so "falsch" wie oben angegeben.

    Kann mir das jemand erklären?

  • Soeben festgestellt, dass das bei jeder Seite so ist, sobald ich ein Slash anhänge, kommt die Seite ohne Layout, aber mit "falschen Links".

    Wie kann ich das beheben? Eventuell Eintrag im htacces?

  • Salut Pete

    Deine Website leitet bei einer nicht existierenden Site auf eine Fehlersite um, welche Du in Zeta Producer erstellt hast und auch "Teil des Projektes" ist. Dies sieht zwar schön aus, hat jedoch zur Folge, dass lediglich ein "Soft-Fehler" ausgegeben wird.

    ... Ich erkläre gleich noch mehr (so gut ich kann und es selber kappiert habe).


    ...

  • ... Also...


    .htaccess - festlegen der Fehlerseite gem. Hanabi

    Der Pfad zur Fehlerseite darf keine absolute Adresse beihalten:

    - ErrorDocument 404 https://www.blablabla/seite-nicht-gefunden.php --> gibt einen Softfehler aus

    - ErrorDocument 404 /seite-nicht-gefunden.php --> ist gut (.html oder .shtml ist auch gut...) Also mit relativem Pfad.

    - Entsprechend die "Datei seite-nicht-gefunden.php" im Root-Verzeichnis - auf erster Ebene ablegen.


    Die eigentliche Fehlerseite sollte im Aufbau in etwa so aussehen:

    Darauf achten, dass allenfalls eingebundene CSS-Dateien mit absoluten Pfaden versehen sind. Oder am einfachsten per <style> CSS in das Dokument (.php / .html / .shtml) direkt einbauen.

    Grundsätzlich kann mit Zeta Producer eine Fehlerseite erstellt werden. Diese muss dann aber unbedingt aus dem Projekt herausgelöst werden!

    Irgendwo hatte ich mal eine entsprechende Anleitung gelesen - die finde ich jedoch im Moment nicht.


    Ergänzende Erläuterungen zum Thema sind erwünscht!


    Ich hoffe, meine Erklärungen waren dienlich und wünsche einen sonnigen Sonntag. Und: Tante Google weiss noch viel mehr zum Thama.

    Viele freundliche Grüsse

    elch


    PS: Ich möchte hier nicht die Fehlerseite meines Projektes verlinken :)

  • Hallo Elch

    Vielen Dank erstmal, leider löst das mein Problem noch nicht.

    Tatsächlich hatte ich die Fehlerseite mit absolutem Pfad eingebunden, habe ich geändert. Die Fehlerseite ist eingebunden, direkt mit Zeta gemacht.

    Aber das Problem mit .php/ oder auch .html/ ist immer noch da. Ich bin inzwischen durch viele Seiten (die mit Zeta gemacht sind) durchgegangen und habe das bei vielen festgestellt. Bei anderen kommt eine Fehlermeldung oder gar nichts Auffälliges.

    Ich denke schon, dass da noch ein zusätzlicher Eintrag (in der htaccess oder eventuell auch direkt in Zeta) helfen kann.

    Hoffentlich weiss da jemand hier eine Lösung oder dann am Montag vom ZETA-Team.


    Danke und schönes Wochenende ;)

  • Ich habe mich jetzt ein wenig durch verschiedene mit Zeta erstellte Seiten geklickt und festgestellt, dass bei vielen Seiten dieses Problem auftritt.


    Wenn an eine beliebige Seite ein Slash angehängt wird (kein Grund warum das geschieht, geschieht aber offensichtlich), dann kommt die aufgerufene Seite ohne korrektes Layout (siehe Screenshot).

    Sämtliche Links die auf dieser Seite aufgerufen werden können sind falsch, in dieser Art:

    Aufgerufene Seite: muster.ch/hugo.php
    Korrekter Link der auf der Seite "hugo.php" ist: muster.ch/fritz.php
    Auf der "kaputten" Seite ist der Link jetzt allerdings so drauf muster.ch/hugo.php/fritz.php

    Wenn man diesem Link folgt, kommt wieder die gleiche "kaputte" Seite.

    Dieses Verhalten habe ich auf vielen mit Zeta erstellten Seiten festgestellt (Beispiele auf Wunsch, ich weiss nicht, ob ich die anderen Seiten so aufführen darf).

    Verschiedene Seiten haben das Problem allerdings gelöst, z.B.

    Bei verschiedenen Seiten kommt stattdessen diese Meldung:
    - The requested URL /leistungen.html/ was not found on this server.

    - Weitere habe ich gefunden, bei denen nur eine "blanke" Seite erscheint.


    Bei Zeta oder z.B. Hanabi wird korrekt umgeleitet auf einen "Seite gibt es nicht"-Hinweis.

    Deshalb vermute ich, dass es entweder eine Einstellung in Zeta gibt oder ein Eintrag in die htaccess das Problem beheben kann.


    Grund für meine Suche: in der SearchConsole habe ich ganz viele dieser Seiten gefunden, diese wurden dann ausgeschlossen, was zwar richtig ist, aber sicher keinen positiven Effekt hat.


    Ich hoffe, ich habe das Problem verständlich erklären können und hoffe auf Eure Hilfe, Merci im Voraus.

  • Das kann nur an einer fehlerhaften Umleitungsregel (z.B. in einer .htaccess) liegen.

    Von Haus aus kann man an die von ZP generierten URLs nicht einfach einen Slash anhängen ohne, dass dies einen 404-Fehler generiert.


    Beispiel:

    Funktioniert: https://content.zeta-producer.…sive-dark/unterseite.html

    Funktioniert, wie erwartet nicht und liefert einen ganz normalen 404-Status: https://content.zeta-producer.…ive-dark/unterseite.html/

  • Das dachte ich mir auch, aber ich habe auf Anhieb ca. 20 Seiten gefunden (nicht meine Seiten), die mit Zeta gemacht sind, bei denen dies so funktioniert.


    Kann mir sonst jemand mal die htaccess anschauen?

  • Haben Sie ein Beispiel einer Seite, die mit ".html" endet, wo das auch so ist? Ich kann es nicht reproduzieren. Mit .php schon, sogar auf der offiziellen Seite mit der PHP-Dokumentation. Scheint mit also eher ein generelles Problem zu sein, das die Ursache in PHP-Webserver-Modul hat.

  • Die URLs aus Ihren Beispielen verlinken aber ordnungsgemäß auf eine Fehlerseite und werden mit Status 404 ausgeliefert. Dass auf diesen Seiten das CSS nicht geladen wird, ist ein anderes Problem.

  • Aber gehen Sie mal auf die Links (in der Navigation) diese sind jeweils z.B. zella.de/zimmer.html/reitabzeichenlehrgang-2019.html (also zwei Seiten hintereinander).

    Bei zella gibt es "Seite nicht gefunden" aus, war mir noch nicht aufgefallen. Bei der Wäscherei bleibt aber die gleiche Seite, einfach mit den "kaputten" Links.

  • Das scheinen beides die im Projekt angegebenen Fehlerseiten zu sein, die mit relativen Links arbeiten. Durchnage erfundenen Verzeichnisse ( der Slash) kommen alle relativen Links durcheinander und daher die falschen URLs und fehlendes CSS etc. Das Problem bei den .php Seiten ist ein anderes.

  • Bei diewaescherei.info/Textilreinigung-Waescherei-Hamburg-Textilpflege-Textilpflege-Card-a.html kommt mit einem bewussten Fehler diese Fehlermeldung, das andere war also nicht die Fehlerseite.

    Auch wenn es 2 Probleme sind, hoffe ich auf Lösung :).

  • Hallo Pete,


    die .htaccess anschauen ist aus der Ferne schwierig, da jegliche Zugriffsversuche direkt auf die .htaccess aus Sicherheitsgründen unterbunden werden. Also bleibt nur die Möglichkeit, dass Du Deine .htaccess hier über Quelltext reinstellst, dann haben wir gleich ordentliche Zeilennummern, um eventuelle Probleme oder Fehler zu besprechen.

  • Ich glaube nicht, dass wir das Problem mit .php Seiten lösen können, weil es nicht durch uns zu entstehen scheint. Das scheint wirklich schon in der PHP Webserver-Erweiterung zu entstehen. Das einzige, was wir tun können, ist zu vermeiden, dass derart falsche Links von unserem Programm generiert werden. Dass dem so ist, wäre mir aber neu.

  • Für diejenigen (z.B. Mario ), die über ihre .htaccess die 404-Seite auf die von Zeta Producer erstellte Seite "Seite nicht gefunden" eingestellt haben, hilft dieses Vorgehen:


    • Wechseln Sie in Zeta Producer zur Seite "Seite nicht gefunden" oder was Sie sonst als 404-Seite festgelegt haben
    • Doppelklicken Sie links im Seitenbaum auf diese Seite
    • Klicken Sie auf "Attribute"
    • Klicken Sie unten auf den Button "Attribute" und wählen Sie die Option "+ Neu"
    • Geben Sie als Namen folgendes ein: make-all-rendered-urls-absolute
    • Geben Sie ins Feld darunter folgendes ein: true
    • Klicken Sie auf den OK-Button um das neue Attribut für diese Seite zu speichern.
    • Klicken Sie auf den OK-Button um die seitenbezogene Attributsverwaltung zu schließen.

    Nun werden alle URLs auf dieser Seite Absolut ausgegeben, was eine Fehlerfreie Darstellung zur folge haben sollte auch wenn in der URL auf nicht existierende Verzeichnisse verwiesen wird…

    • Hilfreich

    Das Verhalten bezgl. der PHP-Seiten kann mit folgendem Eintrag in der .htaccess behoben werden:


    Code
    1. <Files ~ "\.php$">
    2. AcceptPathInfo Off
    3. </Files>
  • Das könnte vielleicht auch im Online-Handbuch ergänzt werden.

    Oder besser eine Rubrik schaffen, wo spezielle Optionen wie diese aufgeführt sind.


    Es gibt ja mittlerweile einiges an Workarounds, da verliert man schnell den Überblick.

  • gilt diese Anleitung jetzt auch für mich (Seiten sind ja mit php) und meine Seite geht ja gar nicht zur "Seite nicht gefunden"?

    Laut Ihrer .htaccess haben Sie als 404-Seite auch die Zeta Producer Seite "Seite nicht gefunden" gesetzt. Sie können also beide Vorschläge umsetzen.


    Die AcceptPathInfo-Einstellung ist von uns nicht getestet. Sollte Ihr Shop mit dieser Einstellung nicht mehr funktionieren oder andere Probleme entstehen, entfernen Sie die Einstellung einfach wieder.


    Gilt dies allgemein oder jetzt speziell auf Pete sein Post?

    Dies gilt nur für Nutzer, die es stört, dass man an URLs, die auf eine gültige .php-Seite verweisen auch noch irgendwelchen Mist anhängen kann ohne dass dies in einem 404-Seite-Nicht-Gefunden-Fehler resultiert. Dies betrifft aber den jeweils genutzten Webserver und hat mit Zeta Producer zunächst mal gar nichts zu tun (wir haben trotzdem geholfen).

  • Laut Ihrer .htaccess haben Sie als 404-Seite auch die Zeta Producer Seite "Seite nicht gefunden" gesetzt. Sie können also beide Vorschläge umsetzen.


    Die AcceptPathInfo-Einstellung ist von uns nicht getestet. Sollte Ihr Shop mit dieser Einstellung nicht mehr funktionieren oder andere Probleme entstehen, entfernen Sie die Einstellung einfach wieder.


    Dies gilt nur für Nutzer, die es stört, dass man an URLs, die auf eine gültige .php-Seite verweisen auch noch irgendwelchen Mist anhängen kann ohne dass dies in einem 404-Seite-Nicht-Gefunden-Fehler resultiert. Dies betrifft aber den jeweils genutzten Webserver und hat mit Zeta Producer zunächst mal gar nichts zu tun (wir haben trotzdem geholfen).

    Danke für die ehrlichen Worte!
    Warum man hinter einer Seite extra was anhängt, ist mir auch unklar. Aber doch gut zu wissen, dass man auch dagegen was machen kann. Und wenn es nur im Hinterkopf sitzt. :-)

  • Stefan S Vielen Dank für Ihre Hilfe, ich habe beide Punkte umgesetzt, leider ohne Erfolg.


    Nun bleiben mir aber vor allem folgende 3 Fragen:

    - warum leitet das bei mir nicht auf die "Seite nicht gefunden" um?

    - warum wird das Layout nicht geladen

    - warum zeigt es die Links in diesem "komischen Format" an (https://www.erma.ch/News.php/Plakatstaender.php)

    Ich denke schon, dass das mit Zeta zu tun hat und hoffe, dass noch jemand eine Lösung findet.

  • - warum leitet das bei mir nicht auf die "Seite nicht gefunden" um?

    - warum wird das Layout nicht geladen

    - warum zeigt es die Links in diesem "komischen Format" an (https://www.erma.ch/News.php/Plakatstaender.php)


    1. Das tut es schon, wenn es nicht um .php Seiten geht. Beispiel https://www.erma.ch/falscher-ordner/falsche-seite.html

    2. Das wird es, wenn es nicht um .php Seiten geht. Beispiel https://www.erma.ch/falscher-ordner/falsche-seite.html

    3. Weil die Regel bezgl. AcceptPathInfo aus irgend einem Grund noch nicht greift. Hierzu ggf. den Web-Hoster kontaktieren, kann sein, dass er diese Einstellung per .htaccess nicht erlaubt oder so.

  • Grundsätzlich ist mir nicht klar, wie Sie denn auf die URL https://www.erma.ch/News.php/Plakatstaender.php kommen? Diese wird ja wohl nicht von Zeta Producer generiert, oder? Wenn diese nur in der Search-Console angezeigt werden, kann es sein, dass jemand anders einen falschen Link auf Sie gesetzt hat, und der sollte ggf. korrigiert werden.


    Mir ist auch nicht klar, warum anscheinend all Ihre Seiten die Dateierweiterung .php haben.

  • 1. Das tut es schon, wenn es nicht um .php Seiten geht. Beispiel https://www.erma.ch/falscher-ordner/falsche-seite.html

    2. Das wird es, wenn es nicht um .php Seiten geht. Beispiel https://www.erma.ch/falscher-ordner/falsche-seite.html

    3. Weil die Regel bezgl. AcceptPathInfo aus irgend einem Grund noch nicht greift. Hierzu ggf. den Web-Hoster kontaktieren, kann sein, dass er diese Einstellung per .htaccess nicht erlaubt oder so.

    1. Es leitet auch bei erma.ch/falscher-ordner/falsche-seite.php richtig um. Aber nicht bei erma.ch/falsche-seite.php/ oder erma.ch/falsche-seite.php/2falsche-seite.php

    2. Bei den gelieferten Beispielen zella + diewaescherei wird das Layout nicht geladen, sind aber html-Seiten. Bei zella wird auf die Fehlerseite geleitet, aber die Navigation ist "kaputt". Genau in dieser "kaputten" Navigation sind dann die Links in dieser komischen Variante gesetzt. (https://www.zella.de/zimmer.html/index.html) Alle Links in dieser Navi können aufgerufen werden, landen allerdings wieder auf der Fehlerseite mit kaputter Navigation.

    3. Was AcceptPathInfo bewirkt oder bewirken soll habe ich leider noch nicht ganz verstanden.

    Grundsätzlich ist mir nicht klar, wie Sie denn auf die URL https://www.erma.ch/News.php/Plakatstaender.php kommen? Diese wird ja wohl nicht von Zeta Producer generiert, oder? Wenn diese nur in der Search-Console angezeigt werden, kann es sein, dass jemand anders einen falschen Link auf Sie gesetzt hat, und der sollte ggf. korrigiert werden.


    Mir ist auch nicht klar, warum anscheinend all Ihre Seiten die Dateierweiterung .php haben.

    4. Diese Links in diesem Format kommen alle aus der Navigation (ohne geladenes Layout/CSS), sowohl bei html oder php. Wie jemand ursprünglich darauf kommt weiss ich nicht, aber wenn jemand über den Slash daruf kommt, sind sämtliche Links falsch. Sämtliche Links die man auf beigelegtem Bild (zella) sieht, habe diesen falschen Aufbau und können angeklickt werden.


    5. Dateierweiterung php - dies ist wohl, weil ich vor Zeta die Produkte jeweils über eine Datenbankabfrage eingebunden hatte und dann die Namen übernommen habe.

    Mir war auch nicht bewusst, dass das ein Problem sein könnte und dachte, dass es besser sei, alle Seiten mit der gleichen Endung anzulegen. Offenbar eine falsche Meinung.

    Sollen also nur Seiten welche, aufgrund einer speziellen Funktion php benötigen, mit php angelegt werden?

    Sollen die bisherigen php-Seiten neu angelegt und mittels 301 umgeleitet werden?


  • Also bei https://www.erma.ch/falscher-ordner/falsche-seite.php erhalte ich jetzt korrekt "Seite nicht vorhanden…"

    Die vorgeschlagenen Änderungen für die .htaccess werden es ja gerade verhindern, dass jemand auf derart falsche Links kommt und dass die "Seite nicht gefunden" ohne CSS und mit falschen Links angezeigt wird.

    Scheint bei Ihnen auch zu greifen, Sie sollten vermutlich nut vor dem Testen Ihren Browser-Cache löschen.

  • Sie können den Seitentyp ruhig auf .php lassen. Mir war nur nicht verständlich warum dies so ist. Es so zu lassen ist sicher einfacher als alles umzuleiten, damit man das google ranking nicht verliert…

  • Sie können den Seitentyp ruhig auf .php lassen. Mir war nur nicht verständlich warum dies so ist. Es so zu lassen ist sicher einfacher als alles umzuleiten, damit man das google ranking nicht verliert…

    Stefan S ,


    macht es für Google einen Unterschied, ob es eine .php oder eine .html Endung ist oder gibt es generell vor.- oder Nachteile der Endungen?

  • Ich lass das mal bis morgen laufen, eventuell hat AcceptPathInfo ja "Vorlaufzeit", sonst frage ich mal beim Provider.

    Danke für die Hilfe, sorry fürs Nerven, aber ich denke, das könnte doch für Einige ein Problem sein.