grinkin

Редирект со слешем и без на конце

Рекомендуемые сообщения

grinkin    0

Здравствуйте уважаемые форумчане! 

Появилась следующая проблема. Не корректно работает 301 редирект. А именно редирект со слешем и без него на конце работает по следующему принципу: Должен - убирать слеш на конце, а на данный момент переадресует на страницы такого типа index.php?_route_=bustery

Как решить данную проблему?

 

Прикладываю свой htaccess

 

# SEO URL Settings
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.telnetshop.ru$ [NC]
RewriteRule ^(.*)$ https://telnetshop.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/ 
RewriteRule ^index\.html$ / [R=301,L] 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ 
RewriteRule ^index\.php$ / [R=301,L]
RewriteCond %{QUERY_STRING} ^route=common/home$
RewriteCond %{REQUEST_METHOD} !^POST$
RewriteRule ^index\.php$ http://%{HTTP_HOST}? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$  /$1 [R=301,L]
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/ 
 
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^system/download/(.*) /index.php?route=error/not_found [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]
 
RewriteCond %{HTTPS} off
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 548

Лучше поставить SeoPro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
grinkin    0

Я поставил. У меня opencart 2.1

Какие еще действия нужно сделать кроме SEO URLs type - SEO pro      и     SEO URLs type - да?

и 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 099

сколько уже писалось - НЕ СУЙ НИЧЕ ПОСЛЕ СТАНДАРТНЫХ ПРАВИЛ.

поиск на форуме для кого?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
grinkin    0

Я ничего и не делал. Человек делал переход на https, после этого началась такая ерунда. Он говорит что ни причем тут.

Я искал в поиске но ничего конкретного по моему случаю, или я что то не догоняю. Скажите пожалуйста что поправить нужно?

Изменено пользователем grinkin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 099

Поиск по слову "index.php?_route_=" вернул 135 результатов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
grinkin    0

убираю вот эти строки

 

RewriteCond %{HTTPS} off

 
редирект работает, но, перекидывает на http и слетают некоторые стили, так же пишет что страница не найдена. Тем не менее ЧПУ стал нормальным.
Изменено пользователем grinkin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
grinkin    0

 

Поиск по слову "index.php?_route_=" вернул 135 результатов

 

Что то ничего по моему случаю я не нашел, по данному запросу

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
grinkin    0

Поможет хоть кто нибудь?
Добился того, что теперь не перекидывает на кривой УРЛ а переадресует на "запрашиваемая страница не найдена" так хоть дубля нет. При этом с https на http кидает. Вот так теперь выглядит htaccess

Что допилить что бы все ровно было с 301 редиректом? подскажите плиииизззз! 

 

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.telnetshop.ru$ [NC]
RewriteRule ^(.*)$ https://telnetshop.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/ 
RewriteRule ^index\.html$ / [R=301,L] 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ 
RewriteRule ^index\.php$ / [R=301,L]
RewriteCond %{QUERY_STRING} ^route=common/home$
RewriteCond %{REQUEST_METHOD} !^POST$
RewriteRule ^index\.php$ http://%{HTTP_HOST}? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$  /$1 [R=301,L]
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/ 
 
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^system/download/(.*) /index.php?route=error/not_found [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]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От spoonyto
      Здравствуйте.
      Подскажите если кто сталкивался.
      Сайт перекидывает на  главную страницу при первом открытии любой страницы. Хотя потом при открытии той же страницы или любой другой страница грузится нормально.
       
      Проверил htaccess, сравнил с по-умолчанию все одинаково.
      Хостер уверяет что ничего не менялось.
       
      Коллега установил пару плагинов, создается впечатление что проблемы как раз из-за этого.
      Из того что удалось найти в google возможно вызвано добавленным кодом в файлы шаблонов (.tpl)
       
      Не уверен что ставлю корректно вопрос, влияет ли на то в какой(-ом) части сайта / шаблоне вставлен этот код, что вызывает этот редирект? Если да, то куда смотреть?
      Спрашиваю потому что хотелось бы найти где именно это лежит, так как плагины были установлены были несколько месяцев назад, а возможности откатится нету на версию перед этим.
       
      Заранее спасибо за адекватные советы.
    • От Artorius
      Всем привет!
      Уважаемые форумчане, подскажите пожалуйста, какую команду нужно прописать в файле .htaccess, что бы настроить редирект на адрес главной страницы http://site.com/ с дублей http://site.com/? и http://site.com/?blabla 
      Всем заранее спасибо)
    • От pikkolo
      Добрый день.
      Помогите настроить .htaccess таким образом, чтобы при открытии сайта открывалась не главная страница(moysite.ru), а в моем случае, moysite.ru/index.php?route=latest/latest
      Сейчас мой файл содержит вот такой текст:
      # SEO URL Settings RewriteEngine On # If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/ RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] RewriteRule ^download/(.*) /index.php?route=error/not_found [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] redirect 301 http://www.moysite.ru/index.php http://www.moysite.ru/index.php?route=latest/latest но последний редирект ничего не поменял
      Как правильно написать?
    • От Vasua20
      Простите ! Помогите пожалуйста ! Что за код такой Это редирект без www на домен, но вот где здесь строчка кода которая отвечает за слеш в конце ? Потом здесь должен быть код который будет редиректить на страницы без www и только домен без слешей и прочего !
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_HOST} ^www\.(.*)$
      RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
      RewriteEngine On
      RewriteRule ^index.html$ / [QSA,R]
    • От izilus
      Из-зи переезда с другого движка, необходимо сделать редирект старых ссылок
      Redirect 301 /p366066-model-shts.html /index.php?route=product/product&path=53086&product_id=366066 RewriteCond %{QUERY_STRING} ^route=product/product&path=53086&product_id=366066$ RewriteRule ^index\.php /p366066-shts-model? [R=301,L] Такой вариант работает, но не является достаточным. Мне необходимо для проверки редиректа испольховать только часть адреса. К примеру из /p3660664-shtangentsirkul-shts.html для проверки достаточной является только эта часть  /p3660664-
      Redirect 301 /p366066-(.*) /index.php?route=product/product&path=53086&product_id=366066 RewriteCond %{QUERY_STRING} ^route=product/product&path=53086&product_id=366066$ RewriteRule ^index\.php /p366066-shts-model? [R=301,L] Однако такой вариант не работает. Может кто-то может подсказать правильное решение.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу