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

[Решено] Как настроить .htaccess на основное зеркало, если несоклько доменов?


Recommended Posts

Как известно, очень важно настроить главное зеркало, чтобы поисковики хорошо относились к сайту.

 

Кроме домена с www и без www в OpenCart существуют еще два зеркала.

 

1. site.ru

2. site.ru/index.php?route=common/home

 

Итого получается аж четыре зеркала, если учесть тоже самое с www.

 

В этой статье дается пример, как переадресовать с www на без www.

 

У меня вопрос, как переадресовать, если самих доменов два, не считая что у каждого еще по четыре зеркала?

 

Так?

# Редирект c www на без www 
	RewriteCond %{HTTP_HOST} ^www.oldsite.ru 
	RewriteRule ^(.*)$ http://newsite.ru/$1 [R=301,L]
 
	RewriteCond %{HTTP_HOST} ^oldsite.ru 
	RewriteRule ^(.*)$ http://newsite.ru/$1 [R=301,L] 

	RewriteCond %{HTTP_HOST} ^www.newsite.ru 
	RewriteRule ^(.*)$ http://newsite.ru/$1 [R=301,L] 

# Редирект для главной (с /index.php на /) 
	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] 

Если ошибся, поправьте пожалуйста.

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


Не нашел в вашем коде имена домена. Похоже это какой-то универсальный вариант. Было бы здорово, если бы работал. Но у меня не сработало. Версия 1.5.5.1.2

А вариант, который я привел правильный? Он-то работает. Правда /index.php?route=common/home все равно не пропало. Так и болтается после домена. Но сайт работает.

Так правильный код, который я привел в первом посте или нет?

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


Не нашел в вашем коде имена домена. Похоже это какой-то универсальный вариант. Было бы здорово, если бы работал. Но у меня не сработало. Версия 1.5.5.1.2

А вариант, который я привел правильный? Он-то работает. Правда /index.php?route=common/home все равно не пропало. Так и болтается после домена. Но сайт работает.

Так правильный код, который я привел в первом посте или нет?

 

100% должно работать, в том числе и на 1.5.5.1.2. Скорее всего что-то неправильно сделали.

В данном решении не нужно прописывать домен и оно решает проблемы с вышеперечисленными дублями.

 

Вот полный htaccess:

Options +FollowSymlinks
Options -Indexes
<FilesMatch "\.(tpl|ini|log)">
Order deny,allow
Deny from all
</FilesMatch>
<FilesMatch "error.(txt)$">
Order Allow,Deny
Deny from all
</FilesMatch>

RewriteEngine On
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^yandexmarket.xml$ index.php?route=feed/yandex_market [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 %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$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]
Надіслати
Поділитися на інших сайтах


Да, действительно, в первый раз видимо что-то не так сделал.

Сейчас еще раз попробовал и все работает.

 

Только скажите пожалуйста для уверенности, этот способ подходит, даже если у меня два домена?

Т.е.

www.oldsite.ru

www.newsite.ru

oldsite.ru

 

будут переадресовываться на newsite.ru?

 

Просто странно, что никакого упоминания о старом домене, но все работает.

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


Да, действительно, в первый раз видимо что-то не так сделал.

Сейчас еще раз попробовал и все работает.

 

Только скажите пожалуйста для уверенности, этот способ подходит, даже если у меня два домена?

Т.е.

www.oldsite.ru

www.newsite.ru

oldsite.ru

 

будут переадресовываться на newsite.ru?

 

Просто странно, что никакого упоминания о старом домене, но все работает.

 

Да, с двумя тоже работать будет, будет идти редирект на тот домен, который прописан в конфигах (без www)

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


  • 11 months later...

А можно ли этим кодом переадресовать не просто на домен без www, а на одну конкретную страницу магазина? Например на конкретную категорию? Чтобы при попадании на главную страницу, мы видели категорию.

Если можно, то как модифицировать этот код, чтобы это реализовать?

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


  • 6 months later...

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

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

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

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

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

Вхід

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

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

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

Important Information

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