RewriteRule schlägt nicht an.

Alles, was den Apache betrifft, kann hier besprochen werden.

RewriteRule schlägt nicht an.

Postby EaStErDoM » 30. July 2005 11:38

Mahlzeit!

Ich habe am Apache einen vhost namens forum.domain.tld. In seinem Verzeichnis liegt nur eine .htaccess Datei, die jemanden der hier rein kommt nach domain.tld/forum, also in einen andern vhost umleiten soll, und den weiteren Pfad der hinten noch dabeihängen könnte mitgibt. Dazu verwende ich folgende Rewrite Rule, die ich aus der Doku hab:

Code: Select all
RewriteEngine on
RewriteCond %{HTTP_HOST}   !^forum\.domain\.tld [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/(.*)         http://domain.tld/forum/$1 [L,R]


Das Problem: Mir wird nur das leere Verzeichnis von forum.domain.tld aufeglistet, die Regel greift also nicht, was hab ich falsch gemacht? Wie kann ich überprüfen, ob die htaccess überhaupt "beachtet" wurde?

Hab den Server jetzt zwar schon ein Jahr, mit dieser Art von Konfiguration komm ich aber noch nicht so gut zurecht und die Doku überfordert mich ein bisschen.
Have Your Cake And Eat It
Take Your Place In History
And Pray We Don't Repeat It
User avatar
EaStErDoM
 
Posts: 17
Joined: 10. January 2005 19:11
Location: Klagenfurt, Kärnten, Österreich

Postby Wiedmann » 30. July 2005 11:46

Wie kann ich überprüfen, ob die htaccess überhaupt "beachtet" wurde?

In dem man "Müll" reinschreibt. Wenn der Apache eine ".htaccess" überhaupt beachtet, sollte er dann eine Fehlermeldung bringen.

Ich habe am Apache einen vhost namens forum.domain.tld. In seinem Verzeichnis liegt nur eine .htaccess Datei, die jemanden der hier rein kommt nach domain.tld/forum, also in einen andern vhost umleiten soll,

Warum nimmst du dazu nicht einfach die Directive "Redirect"?


BTW:
Deine Regel kann nicht greifen, weil diese besagt:
Wenn der aufgerufene Server nicht "forum.domain.tld" ist, dann leite um.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby EaStErDoM » 30. July 2005 12:11

Der stoppt und startet ohne Kommentar, habn Debian-Server da dacht ich eigentlich das wäre standardmäßig eingerichtet. Muss ich das in den vhosts extra einschalten, dass er .htacess Dateien beachet? Da gibts doch sicher eine globale Einstellung in der httpd.conf oder?

Wie mach ich das mit den Pfaden die hinten möglicherweise noch dabei hängen, bei redirect und überhaupt mit vhosts, da kann mn doch keine http:// auf beiden Seiten angeben oder?

Ich kenn das nur so:

Redirect /verzeichnis/unerverz /anderes_verz
Have Your Cake And Eat It
Take Your Place In History
And Pray We Don't Repeat It
User avatar
EaStErDoM
 
Posts: 17
Joined: 10. January 2005 19:11
Location: Klagenfurt, Kärnten, Österreich

Postby Wiedmann » 30. July 2005 12:27

Der stoppt und startet ohne Kommentar

Eine ".htaccess" wird auch erst ausgewertet wen man mit dem Browser drauf zugreift und nicht beim Serverstart.

Muss ich das in den vhosts extra einschalten, dass er .htacess Dateien beachet? Da gibts doch sicher eine globale Einstellung in der httpd.conf oder?

Verantwortlich ist dafür die Directive "AllowOverride".

Ich kenn das nur so:
Redirect /verzeichnis/unerverz /anderes_verz

Das ist falsch. Der zweite (oder dritte) Parameter von Redirect muss eine URI sein und kein Pfad.

BTW:
du, musst nur folgende ".htaccess" in das DocumentRoot von diesem VHost legen (oder das in der httüd.conf direkt machen):
Code: Select all
Redirect    /    http://domain.tld/forum/
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby EaStErDoM » 30. July 2005 13:53

Hab in der mod_vhost Definition AlllowOverride auf All geändert, jetzt schimpft er "Fehler 500", erster Dank!

Das Redirect funktioniert auch hervorragend und nimmt auch brav die Pfade mit, musste nur noch einen Trailingslash bei der domain hinten mitgeben und alles pariert^^.

Herzlichen Dank, hastn Keks gut^^
Supa Supa Supa.
Have Your Cake And Eat It
Take Your Place In History
And Pray We Don't Repeat It
User avatar
EaStErDoM
 
Posts: 17
Joined: 10. January 2005 19:11
Location: Klagenfurt, Kärnten, Österreich


Return to Apache

Who is online

Users browsing this forum: No registered users and 3 guests