2016-09-19 5 views
0

Я использую ниже код:Params в URL по HTAccess

#RewriteCond %{QUERY_STRING} !(^|&)sort_field=more&limit=&p=(&|$) [NC] 
#RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
#RewriteRule^%{REQUEST_URI}?sort_field=more&limit=&p= [L,R=301,QSA] 

Но добавить Params на всех страницах. Мне нужно добавить параметры только в основной домен. Как мне это сделать?

+1

Пожалуйста, добавьте здесь более подробную информацию, чтобы помочь нам понять. Что вы называете «основным доменом», «страницами»? Где ваше условие, ограничивающее правило, только конкретным запрошенным URL? – arkascha

ответ

0

Прежде всего, эти директивы не применяются, поскольку перед ними стоит хэш #.


Строка запроса (PARAMS) добавляется ко всем страницам, так как шаблон ^ (начало URL) соответствует всем страницам. Если вы хотите сопоставить только определенную страницу, вы должны использовать соответствующий шаблон, см. Regular Expressions, чтобы узнать, как указать шаблон.

В вашем случае, главным доменом (главная страница?), Будет всего ^$ или ^index.html$ или аналогичным, например.

RewriteRule ^$ %{REQUEST_URI}?sort_field=more&limit=&p= [L,R,QSA] 

Когда все работает, как положено, вы можете заменить R с R=301. Никогда тест с R=301.

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