RewriteRules in .htaccess funzt nicht
Turtle
- sonstiges
0 wahsaga
Hallo,
ich habe folgende RewriteRule in einer .htaccess:
<code>
RewriteEngine On
RewriteRule index.htm$ index.php [PT]
RewriteRule ^(.*)-([0-9]+).htm$ index.php?name=$1&c=$2
RewriteRule ^(.*)-([0-9]+)-([0-9]+).htm$ index.php?name=$1&c=$2&s=$3
</code>
Die URL "http://www.meineDomain.de/xxx/Bla-174.htm"
ruft "index.php?name=Bla&c=174".
Das funktioniert.
Wird aber die URL "http://www.meineDomain.de/xxx/Bla-174-21.htm"
aufgerufen, dann funzt es nicht:
Es werden folgende Parameter an die index.php übergeben:
name= Bla-174
c= 21
s=
Richtig sollte es sein:
name= Bla
c= 174
s= 21
Ich habe dann zwei Zelen vertauscht, das sieht dann so aus:
<code>
RewriteEngine On
RewriteRule index.htm$ index.php [PT]
RewriteRule ^(.*)-([0-9]+)-([0-9]+).htm$ index.php?name=$1&c=$2&s=$3
RewriteRule ^(.*)-([0-9]+).htm$ index.php?name=$1&c=$2
</code>
Aber es hat sich nichts am Ergebnis geändert.
Was ist da falsch?
Danke für Eure Hilfe im vorraus,
Turtle
hi,
RewriteRule ^(.*)-([0-9]+).htm$ index.php?name=$1&c=$2
RewriteRule ^(.*)-([0-9]+)-([0-9]+).htm$ index.php?name=$1&c=$2&s=$3Wird aber die URL "http://www.meineDomain.de/xxx/Bla-174-21.htm"
aufgerufen, dann funzt es nicht:
Es werden folgende Parameter an die index.php übergeben:name= Bla-174
c= 21
s=
Natürlich, weil die erste Regel das schon abgreift - "Bla-174" passt zu (.*), und 21 zu ([0-9]+).
Ich habe dann zwei Zelen vertauscht, das sieht dann so aus:
RewriteRule ^(.*)-([0-9]+)-([0-9]+).htm$ index.php?name=$1&c=$2&s=$3
RewriteRule ^(.*)-([0-9]+).htm$ index.php?name=$1&c=$2Aber es hat sich nichts am Ergebnis geändert.
Erst mal sollte der Punkt, wenn ein Punkt gemeint ist, maskiert werden - .
Die erste Regel sollte dann aber eigentlich auf den genannten Request passen.
gruß,
wahsaga