Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

fehlerseiten Frage

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
Fakir
PostRank 8
PostRank 8
Beiträge: 858
Registriert: 18.04.2003, 12:49
Wohnort: Rostock

Beitrag von Fakir » 06.03.2009, 19:52

Hallo zusammen

ich hab da mal ein kleines Verständnis problem
ich hab mir eine Fehlerseite erstellt
https://www.liebesspion.de/error.html
wenn ich nun hier statt
https://www.liebesspion.de/index.php
eingebe
https://www.liebesspion.de/index.p
kommt diese auch ( in der htaccess gemacht
auch wenn ich die Url änder in
https://www.liebesspion.de/ind.php

funxt das :wink:

wenn ich aber zum Beispile hier
https://www.liebesspion.de/Tom.html
eingebe
https://www.liebesspion.de/Tom.ht
kommt die error seite
und bei
https://www.liebesspion.de/T.html
seh ich nur noch weiß :oops:

meine spontane Idee wäre das es an der htaccess liet da ja die Profilseiten per modrewrite um geschriebne werden,.. also
RewriteRule ^([\ a-zA-Z0-9_-]+).html$ showprofile.php?username=$1

hoffe man versteht was ich meine... :roll:

und was mach ich da jetzt??

Peter

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 07.03.2009, 11:42

Fakir hat geschrieben:https://www.liebesspion.de/Tom.ht
kommt die error-seite
und bei
https://www.liebesspion.de/T.html
seh ich nur noch weiß :oops:

meine spontane Idee wäre, dass es an der htaccess liegt, da ja die Profilseiten per modrewrite umgeschrieben werden,.. also
RewriteRule ^([\ a-zA-Z0-9_-]+).html$ showprofile.php?username=$1
[…]
und was mach ich da jetzt??
In showprofile.php den Fehler ausgeben, denn anderswo wirst du vermutlich nicht feststellen können, ob ein Profil mit dem gegebenen Namen existiert oder nicht.

404-Fehler gibst du in PHP mit der Zeile header("HTTP/1.0 404 Kenn ich nicht"); aus. Möchtest statt einer spezifischen Meldung bezüglich des angefragten Profils lieber deine allgemeine Fehlerseite anzeigen lassen, verwende folgende drei Zeilen:

header("HTTP/1.0 404 Kenn ich nicht");
virtual("/error.html");
exit;

Die Funktion virtual() ruft serverintern die angegebene lokale URL auf und leitet die Ausgabe an den Browser weiter.

Fakir
PostRank 8
PostRank 8
Beiträge: 858
Registriert: 18.04.2003, 12:49
Wohnort: Rostock

Beitrag von Fakir » 07.03.2009, 14:37

ja danke erstmal,.. werd mich a mal reinvertiefen... Irgendwann kapier ich schon noch :wink:

was mich irrietierst ist das wenn ich die endung (.html) ändere kommt die Fehlerseite wie zu erwarten und wenn ich den dateinamen "verstümmel" kommt ne weiße Seite :-?

Ist aber auch nicht mein wichtigstes Problem, da ja die Profile eh per Klik besucht werden und niemand von Hand eintippt :)

Trotzdem erstmal danke für die schnelle Antwrt

Peter

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 07.03.2009, 16:10

Fakir hat geschrieben:was mich irritiert ist, dass wenn ich die endung (.html) ändere kommt die Fehlerseite wie zu erwarten und wenn ich den dateinamen "verstümmel" kommt ne weiße Seite :-?
Du biegst die Profil-URLs mit folgender Zeile auf das Skript showprofile.php um:

RewriteRule ^([\ a-zA-Z0-9_-]+)\.html$ showprofile.php?username=$1

Das zweite Argument ist ein Muster, es muss auf den angefragten URL-Pfad passen, damit die Umbiegerei überhaupt stattfindet. Am Ende dieses Musters findest du \.html$, \.html steht für den Text .html, das Dollarzeichen ($) für das Ende des zu vergleichenden Textes. In anderen Worten: Dieses Muster passt nur, wenn am Ende des URL-Pfades der Text .html steht.

Änderst du die Dateiendung, so dass etwas anderes als .html am Ende steht, passt das Muster nicht mehr, die URL wird nicht umgebogen und der Webserver versucht, die URL anderweitig zu verarbeiten - was fehlschlägt, woraufhin du den 404-Fehler zu sehen bekommst.

Änderst du hingegen den Teil vor .html, passt das Muster weiterhin, die URL wird umgebogen und showprofile.php ausgeführt. Dass du eine weiße Seite zu sehen bekommst, liegt daran, dass showprofile.php offenbar nichts für den Fall vorgesehen hat, dass das angefragte Profil nicht existiert.
An diesem Punkt müsstest du wie schon beschrieben ansetzen, um eine Fehlermeldung auszugeben.

Fakir
PostRank 8
PostRank 8
Beiträge: 858
Registriert: 18.04.2003, 12:49
Wohnort: Rostock

Beitrag von Fakir » 07.03.2009, 16:23

ja,.. dann lag ich ja mit meiner "erstvermutung" garnicht so falsch 8)

danke für die umfangreiche Erklärung

Peter

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag