Unterschiede mod_rewrite zwischen apache_1.3 und apache_2 ??

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

Unterschiede mod_rewrite zwischen apache_1.3 und apache_2 ??

Postby breakball » 21. July 2005 14:24

Hallo an alle,

ich hab für eine Seite von mir innerhalb der .htaccess Datei rewrite-Regeln angelegt. Diese funktionieren unter der 1.3er Version tadellos. Jetzt will ich die Seiten auf einen neuen Server umziehen, bei dem ich die 2er Version von Apache verwende. Auf dem neuen Server funktioniert die rewrite-Konfiguration jedoch nicht. Der einzige Unterschied zwischen den beiden Servern ist die Hardware und die aktuellste 2er Apache-Version.

Zur Information, ich hab eine LAMP Umgebung und Apache, PHP und MySQL sind mit den Source-Paketen kompiliert worden.

Kann mir jemand einen Tipp geben ob es Unterschiede zwischen der 1.3er und der 2er Version für rewrite gibt? Auf dem neuen Server wird die RewriteEngine angezogen, jedoch liefern mir die Regeln keine Ergebnisse.

Vielen Dank schonmal für Euere Hilfe!!!

Gruß
Bert
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel

Postby Wiedmann » 21. July 2005 14:32

IMHO keiner.

Zur Fehlersuche gibt es aber das RewriteLog.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby breakball » 21. July 2005 14:46

Leider steht im rewrite_log nicht allzuviel drin, bzw. ich kann da nichts weiter erkennen.

Auszug aus dem Logfile
Code: Select all
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] strip per-dir prefix: /var/www/kunden_internet/de/unternehmen/ -> de/unternehmen/
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] applying pattern ''^de/([a-zA-Z0-9_])$'' to uri 'de/unternehmen/'
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] strip per-dir prefix: /var/www/kunden_internet/de/unternehmen/ -> de/unternehmen/
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] applying pattern ''^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$'' to uri 'de/unternehmen/'
host.domain.de/sid#8102870][rid#81cdac8/initial] (1) [per-dir /var/www/kunden_internet/] pass through /var/www/kunden_internet/de/unternehmen/


Hilft das weiter?

Gruss
Bert
Last edited by breakball on 21. July 2005 14:55, edited 1 time in total.
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel

Postby Wiedmann » 21. July 2005 14:52

Nicht wirklich. Schraub mal etwas am RewriteLogLevel.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby breakball » 21. July 2005 15:01

Der Loglevel steht auf 8, hab noch ein paar zusätzliche Zeilen aus dem Logfile mit aufgenommen. Wahrscheinlich auch noch sehr wichtig, ich erhalte einen 403-Fehler.

Danke schon mal

Bert
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel

Postby Wiedmann » 21. July 2005 15:27

Code: Select all
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] applying pattern ''^de/([a-zA-Z0-9_])$'' to uri 'de/unternehmen/'
...
host.domain.de/sid#8102870][rid#81cdac8/initial] (3) [per-dir /var/www/kunden_internet/] applying pattern ''^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$'' to uri 'de/unternehmen/'

Deine Pattern greifen nicht (man sieht hier ja auch schön warum).
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby breakball » 21. July 2005 17:55

Wenn Du mich noch aufklären könntest, ich glaub ich bin Blind und seh nicht was Du meinst.

Bert
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel

Postby Wiedmann » 21. July 2005 18:18

Die erste Pattern kann z.b. nicht greifen, weil in der URI ein Slash hintendran ist und IMHO in der Pattern ein "+" fehlt.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby breakball » 22. July 2005 07:17

So, hab die funktionierenden Regeln vom alten Server nochmal auf den neuen Server kopiert:

Code: Select all
RewriteRule ^de/([a-zA-Z0-9_]+)$ de/index.php?nav1=$1
RewriteRule ^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+).php$ de/index.php?nav1=$1&content=$2.php
RewriteRule ^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ de/index.php?nav1=$1&nav2=$2
RewriteRule ^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+).php$ de/index.php?nav1=$1&nav2=$2&content=$3.php
RewriteRule ^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ de/index.php?nav1=$1&nav2=$2&nav3=$3


und hier dazu der Auszug aus dem rewrite_log

Code: Select all
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] strip per-dir prefix: /var/www/kunde_internet/de/unternehmen/ -> de/unternehmen/
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] applying pattern '^de/([a-zA-Z0-9_]+)$' to uri 'de/unternehmen/'
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] strip per-dir prefix: /var/www/kunde_internet/de/unternehmen/ -> de/unternehmen/
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] applying pattern '^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+).php$' to uri 'de/unternehmen/'
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] strip per-dir prefix: /var/www/kunde_internet/de/unternehmen/ -> de/unternehmen/
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] applying pattern '^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$' to uri 'de/unternehmen/'
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] strip per-dir prefix: /var/www/kunde_internet/de/unternehmen/ -> de/unternehmen/
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] applying pattern '^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+).php$' to uri 'de/unternehmen/'
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] strip per-dir prefix: /var/www/kunde_internet/de/unternehmen/ -> de/unternehmen/
[host.domain.de/sid#80f0828][rid#81bd658/initial] (3) [per-dir /var/www/kunde_internet/] applying pattern '^de/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$' to uri 'de/unternehmen/'
[host.domain.de/sid#80f0828][rid#81bd658/initial] (1) [per-dir /var/www/kunde_internet/] pass through /var/www/kunde_internet/de/unternehmen/


Ich gebs auf, ich seh einfach den Fehler nicht. Vorallem weil die Rules auf dem alten Server Problemlos laufen und ich nicht per copy & paste die einzelnen Regeln rüberkopiert habe sondern die komplette htaccess.

:roll:

Wo kann ich noch ansetzen für die Fehlersuche. Bin nicht so der Rewrite-Spezialist.

Danke!!!

Bert
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel

Postby deepsurfer » 23. July 2005 10:05

vielleicht mal bei http://www.modrewrite.de/ vorbei schauen, die jungs dort sind wahre ReWrite-Künstler.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby breakball » 27. July 2005 08:09

So, habs endlich gecheckt wo der Fehler lag. Wiedmann hats ja schon gepostet, nur da war ich noch blind und hab den Fehler nicht gesehen.

Danke!!!

Gruß
Breakball
breakball
 
Posts: 6
Joined: 21. July 2005 12:39
Location: Im Land der Fichtelwichtel


Return to Apache

Who is online

Users browsing this forum: No registered users and 5 guests