Page 1 of 1

Eine RewriteCond für viele RewriteRule

Posted: 2004-04-23 01:09
by funnydingo
Hm,

ich habe da ein kleines Problem mit mod_rewrite. Ich habe eine ganz Latte aa RewrtieRules (zur Zeit 46 Stück, wenn alles fertig werden es wohl um die 80 sein). Damit der Performace nicht zu sehr leided, wollte ich eine RewriteCond einbauen, die bei Bildern das abarbeiten des RewriteRules "abbricht" und somit die Performance wieder etwas hoch kommt (für Bilder trifft keine RewriteRule zu). Also habe ich einfach

Code: Select all

RewriteCond %{REQUEST_FILENAME} !^.*.(jpg|gif)
Leider tut es es das nicht, also habe ich einen Blick in die Beschreibung zu mod_rewrite und den Apache "URL Rewriting Guide" geworfen. Wo ich folgendes fand
Precede a RewriteRule directive with one or more RewriteCond directives.
Verstehe ich das richtig? Kann ich RewriteCond nur für EINE folgende RewriteRule beeinflussen? Denn auch meine Recherchen haben gezeigt, das RewriteCond immer nur im Zusammenhang mit EINER RewriteRule verwendet wird! Oder ist o.g. RewriteCond doch falsch? Die einzige Idee die ich noch hätte (falls RewriteCond nur für eine RewriteRule gilt) wäre:

Code: Select all

RewriteRule ^(.*.(jpg|gif))$ $1 [L]
Was ich aber gerne umgehen würde.

Gruß,


Funny

Re: Eine RewriteCond für viele RewriteRule

Posted: 2004-04-23 09:14
by mitmacher
moin funny,

ich denke statt:

Code: Select all

RewriteRule ^(.*.(jpg|gif))$ $1 [L]
wäre wohl besser:

Code: Select all

RewriteRule ^/.+.(jpg|gif)$ - [L]
das minuszeichen ist extra dafür, nix zu ersetzen aber durch [L] halt den rule-strang abzubrechen. ist eine feine sache und würde ich so einsetzen... :-)

Re: Eine RewriteCond für viele RewriteRule

Posted: 2004-04-25 20:13
by funnydingo
Habe es jetzt mit der RewriteRule gemacht. Aber danke für den Tip mit dem "-", das wusste ich nicht ;-)