Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Не работает редирект


Recommended Posts

Приветствую, собственно прописал правила редиректа в .htaccess файле, часть ссылок норм работают и редирект идет, а вот такая конструкция не хочет редиректить:

 

RewriteCond %{QUERY_STRING} ^_route_=akkumulyatory/12v-akb/?filter_ocfilter=m:24.html$
RewriteRule ^(.*)$ http://домен/everexceed/? [R=301,L]
 
В чем может быть проблема?
Змінено користувачем freefighteer
Надіслати
Поділитися на інших сайтах


Не там разместили правила

А где надо? Часть ссылок работает, 

 

#301 редирект
RewriteCond %{QUERY_STRING} ^_route_=ibp/off-line-ibp/off-line-ibp-serii-fort.html$
RewriteRule ^(.*)$ http://домен/off-line-ibp-serii-fort/? [R=301,L] (работает)
RewriteCond %{QUERY_STRING} ^_route_=ibp/off-line-ibp/ibp-serii-fort-xt.html$ 
RewriteRule ^(.*)$ http://домен/ibp-serii-fort-xt/? [R=301,L] (работает)
 
RewriteCond %{QUERY_STRING} ^_route_=akkumulyatory/12v-akb/?filter_ocfilter=m:24$
RewriteRule ^(.*)$ http://домен/everexceed/? [R=301,L] не хочет

 

Я подумал может конструкцию =m:24 надо как-то по другому упаковать.

Змінено користувачем freefighteer
Надіслати
Поділитися на інших сайтах


хотя бы потому

 

/?filter

 

Но это все фигня..

 

 

^_route_=

 

Откуда вы берете _route_

 

Это внутренне представление.. Как он мог попасть наружу?

Надіслати
Поділитися на інших сайтах

хотя бы потому

 

/?filter

 

Но это все фигня..

 

 

^_route_=

 

Откуда вы берете _route_

 

Это внутренне представление.. Как он мог попасть наружу?

Я не настолько силен в сайтостроение чтоб ответить на этот вопрос, конструкцию нашел в интернете. Пробовал конструкцию redirect 301 /ru_RU/c/раздел/268 /index.php?route=product/category&path=59 но вконце урла добавляло хвост 

_route_? А конструкцию с ?filter_ocfilter=m:24 игнорировало.

Змінено користувачем freefighteer
Надіслати
Поділитися на інших сайтах


1. если фильтр активен вообще не нужно этого делать: человек ткнет и его будет выбрасывать на редирект

 

2. если же на эту страницу попасть нельзя пользователю, то в контроллере

if ($this->request->get['filter_ocfilter'] == '***')  {
    $this->response->redirect(####
....
Надіслати
Поділитися на інших сайтах

 

1. если фильтр активен вообще не нужно этого делать: человек ткнет и его будет выбрасывать на редирект

 

2. если же на эту страницу попасть нельзя пользователю, то в контроллере

if ($this->request->get['filter_ocfilter'] == '***')  {
    $this->response->redirect(####
....

Это остался хвост от старой версии движка, на сайте партнера размещена ссылка на фильтр своих товаров, но учитывая что теперь тот фильтр не работает, получаем ошибку, на время пока партнер сменит ссылку нужен редирект

Надіслати
Поділитися на інших сайтах


В общем гугл как всегда лучший помощник, на сайте http://www.sql.ru/forum/907321/redirekt-urla-s-parametrami-cherez-htaccess нашел правильную конструкцию для таких редиректов с параметрами и по ней сделал редирект:

 

RewriteCond %{REQUEST_URI} akkumulyatory/$
RewriteCond %{QUERY_STRING} filter_ocfilter=m:24$
RewriteRule .* http://домен/everexceed/? [R=301,nc,L]

 

И все отлично работает, тему можно закрывать.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.