httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Max Dittrich <max.dittr...@t-online.de>
Subject Re: [OT?] mod_rewrite / Reg-Ex
Date Tue, 05 Dec 2006 08:20:51 GMT
Hi,

Christopher Gerharz schrieb:
> 
> Sebastian Kayser wrote:
> [...]
> 
> danke fuer Deinen Tipp.
> Das Logfile (die richtige Anweisung lautet RewriteLog - ohne -File) hat
> mich auf die Spur gebracht, dass die Slashes am Anfang - warum auch
> immer - nicht mitgematcht werden.

Die URL auf die der reguläre Ausdruck angewendet wird ist bei 
RewriteRules im Serverkontext (VirtualHost) und bei Verzeichniskontexten 
(Directory, .htaccess) unterschiedlich:

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewriterule

Wie Du selber gesehen hast, fehlt im Verzeichniskontext mindestens der 
führende "/" - nämlich der Verzeichnisprefix.

> 
> So komme ich zu folgender funktionierenden RegEx:
> 
>> RewriteRule ^(.+)/([a-z]+)-(.+)-.*\.html$ /landing.php?tab=$1&module=$2&param=$3
>> RewriteRule ^(.+)/([a-z]+)-.*\.html$ /landing.php?tab=$1&module=$2
>> RewriteRule ^(.+)/([a-z]+).html$ /landing.php?tab=$1&module=$2
> 
> Das hat zwar immer noch nicht ganz den gewuenschten Zweck, da in manchen
> Faellen Parameter abgeschnitten werden, aber das ist jetzt noch bisschen
> Tueftelei. ;)

Da könnte Dir das Flag [QSA] am Ende Deiner RewriteRule weiterhelfen. 
Dies übernimmt den Querystring aus der eigentlichen Anfrage und vereint 
ihn mit den Parametern aus Deiner Ersetzung.

Grüsse,
.max


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Mime
View raw message