Weiterleitungen funktionieren plötzlich nicht mehr
System Kalina
- webserver
Hallo.
Ich hab mit .htaccess einige Weiterleigungen angelegt. Bisher funktionierten sie auch. Ich hab nix, rein gar nix, verändert und plötzlich werden die Seiten nicht mehr richtig angezeigt. Ich versteh es nicht.
z.B.
http://home.arcor.de/weil.ich.traeume/kindlich-verspieltes/hamster.html
war erreichbar über
http://home.arcor.de/weil.ich.traeume/hamster.html
jetzt versucht der Browser es zu laden, kriegt es aber nicht hin. Die Zieldateien sind auch weiter auf dem Server, hab es überprüft. Ich hab keine Ahnung was da plötzlich schief läuft.
Inhalt von .htaccess
--------------------
RewriteEngine on
Options FollowSymLinks
RewriteBase /weil.ich.traeume/
RewriteRule mailingliste.html sexuelles/mailingliste_psycho_bdsm.html [R]
RewriteRule hamster.html kindlich-verspieltes/hamster.html [R]
RewriteRule selbstmordneigung.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]
Kann mir jemand weiterhelfen?
System Kalina.
Moin!
z.B.
http://home.arcor.de/weil.ich.traeume/kindlich-verspieltes/hamster.html
war erreichbar über
http://home.arcor.de/weil.ich.traeume/hamster.html
Die untere URL leitet auf die obere URL, die wieder auf die obere URL... Endlosschleife.
Inhalt von .htaccess
RewriteEngine on
Options FollowSymLinks
RewriteBase /weil.ich.traeume/
RewriteRule mailingliste.html sexuelles/mailingliste_psycho_bdsm.html [R]
RewriteRule hamster.html kindlich-verspieltes/hamster.html [R]
RewriteRule selbstmordneigung.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]Kann mir jemand weiterhelfen?
Die Endlosschleife ist nur zu verständlich. .htaccess-Dateien gelten ja auch für alle Unterverzeichnisse. Und da die URL "hamster.html" enthält, wird dieser Bestandteil in beiden Varianten gefunden und umgeleitet.
Benutze Redirect, nicht Rewrite, für deine Weiterleitung. Das ist simpler, und hat weniger "Nebenwirkungen".
Siehe http://httpd.apache.org/docs/mod/mod_alias.html#redirect.
- Sven Rautenberg
Hallo.
z.B.
http://home.arcor.de/weil.ich.traeume/kindlich-verspieltes/hamster.html
war erreichbar über
http://home.arcor.de/weil.ich.traeume/hamster.htmlDie untere URL leitet auf die obere URL, die wieder auf die obere URL... Endlosschleife.
hm. Endlosschleife... könnt ja sein, in diesem Fall, aber was ist mit:
RewriteRule selbstmordneigung.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]
???
Das funktioniert ja auch nicht mehr, und da dürfte doch keine Endlosschleife dran schuld sein.
Benutze Redirect, nicht Rewrite, für deine Weiterleitung. Das ist simpler, und hat weniger "Nebenwirkungen".
Das hab ich mal versucht. Ich glaub, das hab ich sein gelassen, weil das mit Unterverzeichnissen nicht gut funktioniert.
Und, da fällt mir noch was ein: Es hat ja am Anfang funktioniert! Einwandfrei funktioniert. Genau so wie ich es stehn hatte. Wenn da also ne Endlosschleife dran schuld wäre, dann hätte es gar nicht funktioniert.
Erscheint fast so, als ob diese Weiterleitungen ein Verfallsdatum :-) hätten. Ich hab die jetzt einfach mal alle geändert und jeweils noch eine "1" drangefügt, also z.B:
RewriteRule selbstmordneigung1.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]
Da ging es!
Für mich ein Rätsel.
System Kalina.
Hallo noch mal.
Also, das Problem hat sich in Luft aufgelöst.
Ich hab die Regeln verändert, also die Dateien umbenannt und dann wieder in die alten Namen zurück umbenannt. Jetzt funktioniert es wieder.
Weiß nicht wieso. Hab ja eigentlich nichts gemacht. Ich freu mich, dass es wieder funktioniert. Falls aber noch jemand ne Idee hat, woran es gelegen hat, bin ich sehr interessiert.
Im Moment staun ich nur Bauklötze. :-)
System Kalina.
Moin!
Im Moment staun ich nur Bauklötze. :-)
Es geht schon wieder nicht mehr... könnte es sein, daß Dir der Browsercache einen üblen Streich gespielt hat (mir ging das neulich auch so...)
Hör auf den Sven Rautenberg: was der von sich gibt hat Hand und Fuß.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Hallo.
Es geht schon wieder nicht mehr... könnte es sein, daß Dir der Browsercache einen üblen Streich gespielt hat (mir ging das neulich auch so...)
*grummel* ja, stimmt. *grumpf*, aber wenn ich den Namen in was ganz neues umbennene, dann funktioniert es!
Hör auf den Sven Rautenberg: was der von sich gibt hat Hand und Fuß.
hm. Ich soll Redirect, nicht Rewrite benutzen. Ich hab das schon mal probiert und nicht hinbekommen. Kann mir vielleicht jemand angeben, was ich _genau_ schreiben muss. Bitte.
Wenn das vorher so ausgesehen hat:
Inhalt von .htaccess
--------------------
RewriteEngine on
Options FollowSymLinks
RewriteBase /weil.ich.traeume/
RewriteRule hamster.html kindlich-verspieltes/hamster.html [R]
Wie muss es mit Redirect sein?
System Kalina
Hallo,
eigentlich musst Du mod_rewrite nur mitteilen, dass es die Umleitung nur bei Dateien machen soll, die im aktuellen Verzeichnis liegen.
Aus
RewriteRule hamster.html kindlich-verspieltes/hamster.html [R]
wird dann zum Beispiel
RewriteRule ^/?hamster.html kindlich-verspieltes/hamster.html [R]
^ besagt, dass hier der Anfang des zu vergleichenden Strings ist.
/? schliesst einen eventuell, aber nicht zwingend vorkommenden Schraegstrich im String ein.
Beste Gruesse
Jan
Hallo.
Weiß nicht, ob ihr das hier noch lest, wo so viele neue Nachrichten da sind. Wollt nur mal Danke sagen für eure Mühe. Ich werd das in den nächsten Tagen mal ausprobieren.
System Kalina.
Moin!
Hör auf den Sven Rautenberg: was der von sich gibt hat Hand und Fuß.
hm. Ich soll Redirect, nicht Rewrite benutzen. Ich hab das schon mal probiert und nicht hinbekommen. Kann mir vielleicht jemand angeben, was ich _genau_ schreiben muss. Bitte.
Redirect /weil.ich.traeume/hamster.html http://home.arcor.de/weil.ich.traeume/kindlich-verspieltes/hamster.html
Eine Zeile je Redirect. Eingangsurl immer ohne Serverangabe, Ausgangsurl immer mit Serverangabe.
- Sven Rautenberg
Moin!
hm. Endlosschleife... könnt ja sein, in diesem Fall, aber was ist mit:
RewriteRule selbstmordneigung.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]
???Das funktioniert ja auch nicht mehr, und da dürfte doch keine Endlosschleife dran schuld sein.
Steht im Ziellink irgendwo der String "selbstmordneigung.html" drin? Ja? Also. Endlosschleife, weil alle URLs mit diesem String auf die lange URL umgeleitet werden.
Benutze Redirect, nicht Rewrite, für deine Weiterleitung. Das ist simpler, und hat weniger "Nebenwirkungen".
Das hab ich mal versucht. Ich glaub, das hab ich sein gelassen, weil das mit Unterverzeichnissen nicht gut funktioniert.
Das funktioniert ganz prima, wenn man es richtig benutzt.
Und, da fällt mir noch was ein: Es hat ja am Anfang funktioniert! Einwandfrei funktioniert. Genau so wie ich es stehn hatte. Wenn da also ne Endlosschleife dran schuld wäre, dann hätte es gar nicht funktioniert.
Naja, war wahrscheinlich eine Ausnahme. Oder es hat zwischenzeitlich ein Serverupdate gegeben, oder sonst irgendwas, was man dir nicht mitgeteilt hat.
Erscheint fast so, als ob diese Weiterleitungen ein Verfallsdatum :-) hätten. Ich hab die jetzt einfach mal alle geändert und jeweils noch eine "1" drangefügt, also z.B:
RewriteRule selbstmordneigung1.html depressiv-veraengstigtes/leben_mit_selbstmordneigung.html [R]
Da ging es!
Logisch. Weil der String selbstmordneigung1.html in der Ziel-URL nicht mehr vorkommt.
Du mußt deinen regulären Ausdruck etwas stärker einschränken. Wenn du kein ^ vorne vor packst, und kein $ hinten dahinter, dann kann dein Suchstring _irgendwo_ in der URL vorkommen, und drumherum beliebig viele sonstige Zeichen - auch Verzeichnisse.
Für mich ein Rätsel.
Für mich nicht.
Redirect ist trotzdem schöner. Und einfacher. Und hat weniger überraschende Effekte.
- Sven Rautenberg