2014-01-15 2 views
3

У меня есть простой рерайт, что изменения

http://website.com/page.php?id=1 

в

http://website.com/page/1 

с помощью следующей переписывают

RewriteRule ^page/(\d+)/?$ /page.php?id=$1 [L] 

переписывания работает, отображает страницу (я не получаю 404), но она, похоже, не проходит через идентификатор из URL-адреса.

Чтобы проверить это, я в основном повторил $ ​​_GET ['id'], и ничего не было возвращено.

Кто-нибудь знает, почему я могу ошибиться?

Большое спасибо

+0

Попробовать 'var_dump ($ _ REQUEST)' и показать нам, что вы получите. – mathielo

ответ

6

Это, скорее всего, из-за разблокирование MultiViews, которая проходит перед тем mod_rewrite и переписывает /page to /page.php.

Добавьте эту строку в верхней части .htaccess, чтобы отключить его:

Options -MultiViews 
+0

Бинго! Спасибо .. –

+0

Добро пожаловать, рад, что это сработало. – anubhava

Смежные вопросы