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 381

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

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


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

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

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

и 

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


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

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

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

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


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

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

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

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

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


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

Поиск по слову "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]

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


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

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

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

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

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

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

Войти

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

Войти


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

    • От 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] Однако такой вариант не работает. Может кто-то может подсказать правильное решение.
    • От devroot
      Коллеги, здравствуйте.
       
      Подскажите, как вы справляетесь с проблемой ЧПУ ? 
       
      Чтобы вместо index.php?route=product/category&path=25_31 было domen.zona/category
      а вместо index.php?route=product/product&path=18&product_id=47 было  domen.zona/category/product_name
       
      oc 2.3 из коробки. (myopencart.com)
    • От Bonifacy
      Добрый день!
      Решил опробовать Opencart и установить его.
      Конфигурация следующая: Win7+Apache24+PHP7+MySQL. Установка прошла гладко и без проблем, база данных создана и морда сайта работает.
      Но войти в админпанель не выходит. При вводе правильной пары логин-пароль сайт генерирует переадресацию с запросом GET мойсайт.ру/admin/index.php?route=common/dashboard&token=3HvUKa6XYuyI5IbA2p6PNZkRc6WgBI5u и ничего не происходит. Форма входа опустошает поля ввода и все (страница просто обновляется).
      Понятное дело, что проблема с htacsess или где-то в этой области. Поковыряв форум нашел пару проблем с которыми пользователи столкнулись 1) Не переименованный .htaccess.txt в .htaccess. 2) Изменение доменного имени или танцы с бубном СЕО "Специалистов". 3) Магазин располагается не в корне сайта.
      У меня файл корректно переименован, а установка свежая и располагается в каталоге соответсвуюущий DocumentRoot. Бьюсь с утра, понят не могу, что не так в этой жизни. Сайт виден в интернет. Реальный домен подменил здесь на site.ru
      Приводу вырезки из конфигурации:
      httpd-vhosts
      DocumentRoot "D:/ApacheSites/site.ru/opt/" - сам магазин в этой директории и находится. config.php
      <?php // HTTP define('HTTP_SERVER', 'http://opt.site.ru/'); // HTTPS define('HTTPS_SERVER', 'http://opt.site.ru/'); // DIR define('DIR_APPLICATION', 'D:/ApacheSites/site.ru/opt/catalog/'); define('DIR_SYSTEM', 'D:/ApacheSites/site.ru/opt/system/'); define('DIR_IMAGE', 'D:/ApacheSites/site.ru/opt/image/'); define('DIR_LANGUAGE', 'D:/ApacheSites/site.ru/opt/catalog/language/'); define('DIR_TEMPLATE', 'D:/ApacheSites/site.ru/opt/catalog/view/theme/'); define('DIR_CONFIG', 'D:/ApacheSites/site.ru/opt/system/config/'); define('DIR_CACHE', 'D:/ApacheSites/site.ru/opt/system/storage/cache/'); define('DIR_DOWNLOAD', 'D:/ApacheSites/site.ru/opt/system/storage/download/'); define('DIR_LOGS', 'D:/ApacheSites/site.ru/opt/system/storage/logs/'); define('DIR_MODIFICATION', 'D:/ApacheSites/site.ru/opt/system/storage/modification/'); define('DIR_UPLOAD', 'D:/ApacheSites/site.ru/opt/system/storage/upload/'); .htaccess приводить не буду он стандартный ка при свежей установке.
      Выручите пожалуйста, понять не могу, что исправить надо.
  • Последние посетители   0 пользователей онлайн

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