2016-06-10 3 views
0

Я изменил URL-адрес моей веб-страницы от localhost/products.php до localhost/products, используя код ниже.Как переписать постраничный URL?

RewriteCond %{THE_REQUEST} /products\.php[\s/?] [NC] 
RewriteRule^/products [R=301,L] 
RewriteRule ^products/?$ products.php [L,NC] 

Но когда я перейти к следующей странице, в адресной строке показывает, что-то вроде: localhost/products?page=2, который я хочу, чтобы выглядеть как localhost/products/page2

Пробовал это RewriteRule ^products/page/([0-9]+)/?$ products.php?page=$1 [L], но это не сработало. Мой полный код для перезаписи URL страницы является:

RewriteCond %{THE_REQUEST} /products\.php[\s/?] [NC] 
RewriteRule^/products [R=301,L] 
RewriteRule ^products/?$ products.php [L,NC] 
RewriteRule ^products/page/([0-9]+)/?$ products.php?page=$1 [L] 

Вот как я могу изменить URL для следующих страниц? Я имею в виду от localhost/products?page=2 до localhost/products/page2 и так далее.

ответ

0

Вы можете использовать следующее правило:

RewriteCond %{THE_REQUEST} /products/?(?:\.php)?\?page=([^\s&]+) [NC] 
RewriteRule^/products/%1? [R=301,L] 
RewriteRule ^products/([0-9]+)/?$ /products.php?page=$1 [L,NC] 

Это будет преобразовывать URLs

  • /products.php?page=number
  • /продукция/страница = номер
?

до

  • /продукция/номер
+0

ошибка при переходе на другую страницу, светлячок ошибка ** страница не перенаправлять правильно **, хром ошибка ** LOCALHOST перенаправлены вас слишком много раз. ** –

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