Finessen mit .htaccess
Rolf r.
- webserver
Liebe Forumer,
aus gegebenem Anlass möchte ich für nicht mehr vorhandene URLs auf meiner Site eine eigens dazu erstellte Seite ausgeben, diese Seite habe ich unter http://www.i-netlab.de/404.html abgelegt. Ins HttpRoot habe ich eine .htaccess gespielt mit folgendem Inhalt:
ErrorDocument 404 /404.html
Soweit sogut, auf meiner lokalen Kiste (Apache 1.3.9 / Win98) gehts prima! Aber nicht auf der Linux Maschine beim Prov... hier wird bei ner falschen URL richtigerweise ein 404 ausgegeben aber meine schöne 404.html kommt nicht.
Hat jemand eine Idee wo's klemmen könnte?
Viele Grüße, Rolf
Hallo Rolf,
Hat jemand eine Idee wo's klemmen könnte?
Bei mir nicht: http://www.einspender.de/temp/i-netlab.de.gif ;)
Wer weiß wo, aber imho gibt der Server die 404 für alle Clients
genauso aus, also sollte es jetzt gehen.
Viele Grüße aus Dresden,
Stefan Einspender
PS: Bei Unterverzeichnissen geht die 404 auch, 403 ist aber (noch)
Standard.
Hallo Stefan.
Bei mir nicht:
<img src="http://www.einspender.de/temp/i-netlab.de.gif" alt="">
;)
Ich habe ein ähnliches Problem mit .htaccess: Wenn bei mir auf xitnalta.com eine Seite nicht da ist, wird zwar schon die /errata/404.html aufgerufen, ich will aber nicht, dass dann statt http://www.xitnalta.com/xy.htm http://www.xitnalta.com/errata/404.html in der Adressleiste steht. Ich will die 404-Seite UND die URL http://www.xitnalta.com/xy.htm in der Adressleiste. Wie lässt sich das machen?
bis nextens
xitnalta
Hallo xitnalta,
das hängt damit zusammen, ob du den Pfad zu 404.html absolut oder relativ angibst.
Mit http://... davor steht glabuich die 404 inder URL Zeile und einfach mit /... steht
die angeforderte datei in der Adresszeile.
(vielleicht ja auch umgekehrt...)
CYa
GONZO
Hallo GONZO & xitnalta;
das hängt damit zusammen, ob du den Pfad zu 404.html absolut oder relativ angibst.
Mit http://... davor steht glabuich die 404 inder URL Zeile und einfach mit /... steht
die angeforderte datei in der Adresszeile.
(vielleicht ja auch umgekehrt...)
Ja genau, stimmt, bei der zweiten Variante ( /errata/404.html ) mußt
Du nur berücksichtigen, dass die Referenzen in der Datei absolut
sein müssen, wenn du nur <img src="bild.gif"> da stehen hast, dann
sucht er das Bild ja immer in dem Verzeichnis, wo gerade der 404 auf-
tritt.
(Also mußt <img src="http://www.xyz.com/errata/bild.gif"> oder
<img src="/errata/bild.gif"> angeben.)
Oder Du machst es Dir einfach und schreibst in die Fehlerseiten oben
<base href="http://www.xyz.com/errata/> rein, sollte doch mit
allen Browsern gehen und Du kannst die Fehlerseiten nach auch off-
line anschauen, nachdem Du nur diese eine Zeile auskommentierst.
(Brauchst ja dann nicht mehr absolute Referenzen in den Seiten ver-
wenden.)
Ausserdem habe ich gerade gestern abend zu diesem Thema was gesucht
und im Archiv (selfstverständlich) auch gefunden.
-> <../../sfarchiv/2000_2/t15684.htm#a79450>
Demnach funktioniert bei den Apache-Servern die folgende Zeile nicht:
ErrorDocument 401 http://www.xyz.com/errata/401.html
Habe ich selbst überprüft, da _muß_ ErrorDocument 401 /errata/401.html
stehen, sonst geht es nicht, Begründung siehe obiger Link.
Viele Grüße aus Dresden,
Stefan Einspender
Moin moin,
vielen Dank für Eure Bemühungen! Bei mir gehts jetzt auch, wer weis was da war, schlechten Tach erwischt gestern o.ä.
Viele Grüße, Rolf
Hallo Rolf,
vielen Dank für Eure Bemühungen! Bei mir gehts jetzt auch, wer weis was da war, schlechten Tach erwischt gestern o.ä.
Gut, jetzt geht das, was ich mal wollte, d.h. die Adresse des fehlerhaften Dokumentes bleibt in der Adressleiste - ABER:
Jetzt kommt auf einmal nicht mehr meine 404-Seite! 403 und 401 funktionieren, 500 weiss ich noch nicht, wie ichs testen könnte. Hier die Datei .htaccess im Wurzelverzeichnis von xitnalta.com:
ErrorDocument 404 /errata/404.html
ErrorDocument 500 /errata/500.html
ErrorDocument 401 /errata/401.html
ErrorDocument 403 /errata/403.html
Ich habe die 404 schon überall reinplatziert, unterhalb von ErrorDocument 403 ..., 500..., nix geht.
Also leuz, das Prob ist noch da und ich kenn mit mit den Extrawürsten des Apache nicht so gut aus wie viele andere hier ;-). Der Apache läuft (natürlich) auf Linux und sollte eine ziemlich aktuelle Version sein...
bis nextens
xitnalta