помогите с url страницы

imaxwell
На сайте с 28.12.2010
Offline
41
528

Здравствуйте!

При добавлении материала формируется ссылка такого типа site.ru /?page=show&id=78&cat1=4&cat2=12 все хорошо!

Заметил следующее, что при переходе на /?id=78&cat1=4&cat2=12&page=show

или на /?cat1=4&cat2=12&page=show&id=78

или на /?cat1=4&page=show&id=78&cat2=12

открывается та же страница. Т.е. по всевозможным комбинациям получаем несколько урл с одинаковым содержанием.

Дайте совет, что бы открывалось только в таком виде: /?page=show&id=78&cat1=4&cat2=12

id, cat1, cat2 могут иметь разные значения цифрами

[Удален]
#1

Это норма, не переживай)

/ru/forum/892128

J
На сайте с 20.02.2014
Offline
120
jkm
#2

Если хочется изврата, то как-то так:


RewriteCond %{QUERY_STRING} (page=[^&]+)
RewriteCond %1\ %{QUERY_STRING} ^(\S+).+(id=[^&]+)
RewriteCond %1&%2\ %{QUERY_STRING} ^(\S+).+(cat1=[^&]+)
RewriteCond %1&%2\ %{QUERY_STRING} ^(\S+).+(cat2=[^&]+)
RewriteCond ?%1&%2\ %{THE_REQUEST} !^(\S+)[^?]+\1\ HTTP
RewriteRule ^ /?%1&%2 [R=301,L]
totamon
На сайте с 12.05.2007
Offline
437
#3
imaxwell:
Т.е. по всевозможным комбинациям получаем несколько урл с одинаковым содержанием.

где вы их получаете? в голове?) если у вас скрипт правильные урлы прописывает, откуда возьмутся эти все комбинации?

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
imaxwell
На сайте с 28.12.2010
Offline
41
#4
totamon:
где вы их получаете? в голове?) если у вас скрипт правильные урлы прописывает, откуда возьмутся эти все комбинации?

web2033:
Это норма, не переживай)

/ru/forum/892128

не знаю

jkm:
Если хочется изврата, то как-то так:

RewriteCond %{QUERY_STRING} (page=[^&]+)
RewriteCond %1\ %{QUERY_STRING} ^(\S+).+(id=[^&]+)
RewriteCond %1&%2\ %{QUERY_STRING} ^(\S+).+(cat1=[^&]+)
RewriteCond %1&%2\ %{QUERY_STRING} ^(\S+).+(cat2=[^&]+)
RewriteCond ?%1&%2\ %{THE_REQUEST} !^(\S+)[^?]+\1\ HTTP
RewriteRule ^ /?%1&%2 [R=301,L]

Спасибо, вроде как правильно делает перенаправление

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий