Перенаправление ссылок поиска постов на главную страницу сай

Обсуждение любых вопросов связанных с файлами конфигурации .htaccess

Перенаправление ссылок поиска постов на главную страницу сай

Сообщение opiums » Вт мар 28, 2017 3:26 am

Есть ссылка http://mysite.com/post/vulkan/?search=google-search, необходимо чтобы при наборе текста в поиске происходило перенаправление на главную страницу сайта, и оставалась переменная ?search=динамический+текст, то есть ссылка выглядила вот так: http://mysite.com/?search=google-search. Как возможно это сделать?
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение Emilien » Вт мар 28, 2017 7:23 am

Код: выделить все
RewriteCond %{THE_REQUEST} " /post/vulkan/\?search="
RewriteRule ^ / [R=301,L]
Emilien
Мл. Сержант
 
Сообщений: 51
Зарегистрирован: Чт дек 10, 2015 3:35 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение opiums » Вт мар 28, 2017 2:16 pm

Emilien писал(а):
Код: выделить все
RewriteCond %{THE_REQUEST} " /post/vulkan/\?search="
RewriteRule ^ / [R=301,L]

Хорошо, но только /post/vulkan/ тоже динамический текст, там может быть любой пост, или даже /page/links/. Структура /текст/текст/, как это можно перенаправить через htaccess?
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение opiums » Вт мар 28, 2017 2:34 pm

RewriteCond %{THE_REQUEST} " /([^/]+)/([^/]+)/\?search="
RewriteRule ^ / [R=301,L]

Вот так работает. Спасибо за помощь!
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

IIS

Сообщение opiums » Вт мар 28, 2017 3:05 pm

Было бы очень хорошо, если бы мне кто нибудь подсказал как теперь это на IIS перенести ещё...
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение Emilien » Вт мар 28, 2017 6:27 pm

Возможно как-то так:
Код: выделить все
<rule name="Redirect from search">
<match url="^[^/]+/[^/]+/$" />
  <conditions>
      <add input="{QUERY_STRING}" pattern="^search=" />
  </conditions>
<action type="Redirect" url="$Q" />
</rule>
Emilien
Мл. Сержант
 
Сообщений: 51
Зарегистрирован: Чт дек 10, 2015 3:35 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение opiums » Вт мар 28, 2017 11:21 pm

Emilien писал(а):Возможно как-то так:
Код: выделить все
<rule name="Redirect from search">
<match url="^[^/]+/[^/]+/$" />
  <conditions>
      <add input="{QUERY_STRING}" pattern="^search=" />
  </conditions>
<action type="Redirect" url="$Q" />
</rule>

Эхх, я попробовал, но так почему то не работает
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Правильное перенаправиление

Сообщение opiums » Пн апр 10, 2017 1:41 pm

Внимательно покопавшись, я нашел решение:
Код: выделить все
<rule name="Redirect from search" stopProcessing="true">
<match url="^[^/]+/[^/]+/$" />
<conditions>
<add input="{QUERY_STRING}" pattern="^search=" />
</conditions>
<action type="Redirect" url="/" />
</rule>

И внимание: правило должно стоять в самом начале, на 1-м месте, иначе работать не будет
opiums
 
Сообщений: 6
Зарегистрирован: Вт мар 28, 2017 3:22 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0


Вернуться в Htaccess

Кто сейчас на форуме

Зарегистрированные пользователи: нет зарегистрированных пользователей

cron