переписывать правила, действуя странно - PullRequest
0 голосов
/ 28 февраля 2012

Что-то очень странное происходит с моими правилами переписывания при перемещении в среду общего хостинга (и в файл .htaccess)

При локальной работе над WAMP все работало нормально для этих правил

RewriteRule confirmation/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)$ /index.php?action=confirmation&type=$1&item=$2
RewriteRule bump/([0-9a-zA-Z_-]+)$ /index.php?action=bump&item=$1
RewriteRule item/([0-9a-zA-Z_-]+)$ /index.php?action=item&item=$1
RewriteRule item_login/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)$ /index.php?action=item_login&type=$1&item=$2

Теперь это странно.Например, когда я захожу на этот url / translation / bump / 1330384419_product, я не получаю страницу подтверждения, как должна, но вижу страницу, которая должна появиться для / bump / 1330384419_product.Если я удаляю второе правило перезаписи из htaccess и обновляю, я получаю страницу подтверждения правильно.Подобное поведение относится к правилам item и item_login.

Я не знаю, что, черт возьми, происходит

1 Ответ

1 голос
/ 28 февраля 2012

Есть ли причина, по которой вы не используете ^, чтобы указать, что начало вашего паттерна должно совпадать с началом запроса, так же, как вы используете $ для указания совпадения концов?

...