Platzsparende RewriteEngine-Regel
die Variante 1
die gleiche Wirkung hat, wie die Variante 1, dem ist aber nicht so. Was muss ich in der Variante 2 ändern, damit ich eine platzsparende Regel habe, die alle dateixyz.php abdeckt und ich mir sparen kann, für jede dateixyz.php eine separate Regel zu schreiben?
Diese
führt auch nicht zum Erfolg.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.de$ [NC]
RewriteRule ^(.*)$ /ordnerNeu/dateixyz.php [L]
tut, was erwartet wird. Ich dachte, dass diese RegelRewriteCond %{HTTP_HOST} ^domain.de$ [NC]
- Variante 1
RewriteRule ^(.*)$ /ordnerNeu/dateixyz.php [L]
# Variante 2
RewriteCond %{REQUEST_URI} /ordnerAlt/^(.*)$ [NC]
RewriteRule ^(.*)$ /ordnerNeu/$1 [L]
RewriteCond %{REQUEST_URI} /ordnerAlt/^(.*)$ [NC]
RewriteRule ^(.*)$ /ordnerNeu/$1 [L]
die gleiche Wirkung hat, wie die Variante 1, dem ist aber nicht so. Was muss ich in der Variante 2 ändern, damit ich eine platzsparende Regel habe, die alle dateixyz.php abdeckt und ich mir sparen kann, für jede dateixyz.php eine separate Regel zu schreiben?
Diese
# Variante 3
RewriteCond %{REQUEST_URI} /ordnerAlt/^(.*)$.php [NC]
RewriteRule ^(.*)$ /ordnerNeu/$1 [L]
RewriteCond %{REQUEST_URI} /ordnerAlt/^(.*)$.php [NC]
RewriteRule ^(.*)$ /ordnerNeu/$1 [L]
führt auch nicht zum Erfolg.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 281812
Url: https://administrator.de/forum/platzsparende-rewriteengine-regel-281812.html
Ausgedruckt am: 14.04.2025 um 18:04 Uhr
1 Kommentar

Moin,
schau dir doch mal dein Regex in der RewriteCond an, der kann ja nicht funktionieren da du vor dem ^ noch Strings setzt, ^ bedeutet Matche den Anfang eines Strings!
Und auf Backreferences aus einer RewriteCond benutzt man das Prozentzeichen anstatt das Dollarzeichen
Einfach mal durchlesen, steht da alles schön drin:
http://httpd.apache.org/docs/current/mod/mod_rewrite.html
Gruß grexit
schau dir doch mal dein Regex in der RewriteCond an, der kann ja nicht funktionieren da du vor dem ^ noch Strings setzt, ^ bedeutet Matche den Anfang eines Strings!
Und auf Backreferences aus einer RewriteCond benutzt man das Prozentzeichen anstatt das Dollarzeichen
RewriteCond %{REQUEST_URI} ^/ordnerAlt/(.*\.php)$ [NC]
RewriteRule ^(.*)$ /ordnerNeu/%1 [L]
http://httpd.apache.org/docs/current/mod/mod_rewrite.html
Gruß grexit