Jump to content
Sign in to follow this  
Velkinvv

Массовый редирект кириллических ссылок

Recommended Posts

Здравствуйте. Подскажите по редиректу. Переезжаю на джумшопинга на опенкарт. Товары перенёс и немного изменил структуру категорий. Однако товары по прежнему находятся в соответствующих категориях.

Т.е. грубо говоря, раньше было /магазин/категориятовара/товар, а теперь просто /категория/товар

Вся проблема в том, что нужно задать редирект категорий, но все ссылки кириллические.

Как правильно сделать, ведь .htaccess не понимает такие ссылки и RewriteRule не поможет?

Share this post


Link to post
Share on other sites
14 минут назад, Velkinvv сказал:

ведь .htaccess не понимает такие ссылки

А вы проверяли?

Share this post


Link to post
Share on other sites

Проверял, но видимо не правильно.

Файл в кодировке utf-8 без бом.

Пробовал и 301 редирект, и 

RewriteRule ^магазин/автохимия-и-гсм/моторные-масла/(.*)$ https://имямагазина.рф/автохимия-и-гсм/моторные-масла/$1 [R=301,L]

не помогло. 

Сейчас попробовал

RewriteCond %{QUERY_STRING} ^_route_=магазин/автохимия-и-гсм/моторные-масла/(.*)$
RewriteRule ^(.*)$ https://имямагазина.рф/автохимия-и-гсм/моторные-масла/$1 [R=301,L]

 

Категории перекидывает, это уже хорошо, но на товары получаю неадекватную ссылку вида

/автохимия-и-гсм/моторные-масла/index.php?_route_=магазин/автохимия-и-гсм/моторные-масла/bmw-classic-oil-20w-50-5l-1098

 

а должно быть

автохимия-и-гсм/моторные-масла/bmw-classic-oil-20w-50-5l-1098

Share this post


Link to post
Share on other sites

С перенаправлением почти разобрался. Сработало правило

RewriteRule ^магазин/автокосметика-bmw/(.*)$ https://имясайта.рф/автохимия-и-гсм/автокосметика/$1  [R=301,L]

 

Просто надо было вставить до 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
а не после, как я пробовал до этого.

 

Но теперь получил другую проблему, получаю ссылку вида 

https://имясайта.рф/автохимия-и-гсм/автокосметика/-bmw

хотя должна быть 

https://имясайта.рф/автохимия-и-гсм/автокосметика/

 

Но у меня раньше дублировались категории, была ещё одна автокосметика и я сейчас их объединил. 

Второй редирект выглядит так

RewriteRule ^магазин/автокосметика/(.*)$ https://имясайта.рф/автохимия-и-гсм/автокосметика/$1 [R=301,L]

 

Подскажите, как сделать редирект с категории автокосметика-bmw на автокосметика и избавиться от /-bmw в конце ссылки. 

Edited by stparts

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.