Проблема с получением второго правила перезаписи: слишком ли первое правило? - PullRequest
2 голосов
/ 07 февраля 2010

, как я уже описал выше, если я вызываю, например, / berlin, он правильно маршрутизирует, но если я попытаюсь /berlin-blabla-50-prozent-rabatt.html, он также принимает первое правило, я не уверен, как отрицатьрегулярное выражение, сообщающее, имеет ли оно «-» или что-то в этом роде, принимает второе.У меня также возникла проблема: если я ставлю трейлинг / он тоже ломается, нужно ли добавлять третье правило, чтобы покрыть трейлинг /?Любая помощь приветствуется!

RewriteRule ^(.*)$ /dev/index.html?city=$1 [NC,R]
RewriteRule ^(.*)-(.*)-50-prozent-rabatt.html$ /dev/index.html?city=$1&deal=$2 [NC,L,R]

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 07 февраля 2010

Первое правило ловит все, поэтому оно никогда не перейдет ни к каким другим правилам.

Поменяйтесь местами по правилам. Правило, которое ловит все, всегда должно быть последним.

0 голосов
/ 07 февраля 2012

это сработало для меня в конце:

RewriteRule ^(.{1,15})$ index.html?city=$1 [NC]
RewriteRule ^(.*)-(.*)-(.*)-prozent-rabatt.html$ index.html?city=$1&deal=$2 [NC,L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...