301 перенаправление страниц, не работающих с opencart

#.htaccess #redirect #opencart

#.htaccess #перенаправление #opencart

Вопрос:

перенаправьте некоторые страницы на домашнюю страницу opencart.

Например: https://mywebsitenamehere.com/index.php?route=product/manufacturer

301 перенаправление на: https://mywebsitenamehere.com/

Обычно я бы добавил что-то вроде этого:

 Redirect 301 /index.php?route=product/manufacturer https://mywebsitenamehere.com/
 

Фрагмент моего .htaccess:

 # 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=extension/feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/storage/(.*) 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]
 

Спасибо!!

Комментарии:

1. Проверка, сработал ли для вас ответ ниже. Если да, то обязательно отметьте ответ как принятый или сообщите нам, если проблема все еще существует

2. Это не сработало, но был другой способ .. Я напишу это здесь, когда у меня будет секунда!

3. ОБНОВЛЕНИЕ: в (например) manufacturer.php добавьте следующее в самый верх: <?php // для перенаправления заголовка страницы(‘Location: mywebsitenamehere.com ‘ ) ; ?>

Ответ №1:

Не могли бы вы попробовать следующее, написанное и протестированное с показанными примерами. Пожалуйста, убедитесь, что вы очистили кэш браузера перед тестированием URL-адресов.

 RewriteEngine ON
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/storage/(.*) index.php?route=error/not_found [L]

RewriteCond %{QUERY_STRING} ^route=product/manufacturer [NC]
RewriteRule ^index.php https://mywebsitenamehere.com [R=301,NC,L]
 

Комментарии:

1. На самом деле я хочу перенаправить несколько URL-адресов (но все на домашнюю страницу). Я подумал, что если у нас заработает одна, я мог бы продолжить и сделать другие. Домашняя страница is:mywebsitenamehere.com но недавно я заметил, что URL-адрес иногда выглядит следующим образом: mywebsitenamehere.com/index.php?route=common/home Двумя примерами страниц, которые я хочу перенаправить на главную страницу 301, являются mywebsitenamehere.com/index.php?route=product/manufacturer ИЛИ mywebsitenamehere.com/index.php?route=account/voucher Большое вам спасибо за помощь!

2. @ReggieWills, хорошо, не могли бы вы попробовать следовать RewriteCond %{QUERY_STRING} ^route=(product|account)/(manufacturer|voucher) [NC] RewriteRule ^index.php https://mywebsitenamehere.com [R=301,NC,L] RewriteRule ^ index.php?route=%1/%2 [L] , я пока публикую это здесь, как только вы подтвердите, я опубликую их в своем ответе, также во всех правилах есть новые строки между ними, но комментарий стека не распознает его, поэтому отредактируйте его соответствующим образом, пожалуйста, проверьте это и свяжитесь со мной,быстрый ответ будет оценен приветствиями 🙂

3. @ReggieWills, странно, ты нажимаешь mywebsitenamehere.com/index.php?route=product/manufacturer url-адрес в вашем браузере?

4. Я нажимал на эту ссылку, да, не позволял мне добавить комментарий, извините!

Ответ №2:

Обновить:

в (например)

 manufacturer.php
 

добавьте следующее в самый верх:

 <?php // to redirect page
header( 'Location: https://mywebsitenamehere.com/' ) ;
?>