Траблы с 301. Нужна помощь!

12
Putnik
На сайте с 02.11.2009
Offline
113
835

Всем доброго!

Ситуация следующая.

site.ru

Редирект с www.site.ru на site.ru реализован с помощью вот такого кода в .htaccess:


<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
</IfModule>

сайт.рф

скорее всего направлен на одну пупку с сайтом site.ru и является его точной копией. Добавляя материалы на site.ru они так же появляются и на сайте сайт.рф

www.сайт.рф

По идее он должен быть копией сайт.рф и site.ru соответственно, но висит какая то заглушка.

Теперь вопросы.

1. Как настроить 301 с сайт.рф на site.ru?

2. Где ковырять заглушку на www.сайт.рф?

3. Как настроить 301 с www.сайт.рф на site.ru?

>>> Играй и зарабатывай (https://goo.gl/gC9Xgr) Этот (http://goo.gl/y7LTOS) хостинг хорош, а вот этот лучше (http://goo.gl/y7LTOS)! Хорошие скидки в ЛС! Лучший сервис по мониторингу позиций сайта (http://goo.gl/aQe86s). Возможна оплата xml лимитами.
A
На сайте с 18.05.2008
Offline
207
#1
Putnik:
Теперь вопросы.
1. Как настроить 301 с сайт.рф на site.ru?

Добавить на сайт.рф htaccess

Options +FollowSymLinks

RewriteEngine on

RewriteRule (.*) http://site.ru/$1 [R=301,L]

Putnik:
2. Где ковырять заглушку на www.сайт.рф?

На хостинге/сервере, где расположен www.сайт.рф (видимо в директории данного домена).

Putnik:
3. Как настроить 301 с www.сайт.рф на site.ru?

см. 1 вопрос

LineHost.Org - Хостинг и VPS в Москве | VPS в США (http://linehost.org/) WebNicks.Com - Дешевая Регистрация Доменов Онлайн (http://webnicks.com/)
Putnik
На сайте с 02.11.2009
Offline
113
#2
addurl:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://site.ru/$1 [R=301,L]

Не пошло.

Добавил строки в .htaccess и при обращении и к сайт.рф и к site.ru стало вываливать 404


На хостинге/сервере, где расположен www.сайт.рф (видимо в директории данного домена).

Всё бы нормально, но у меня нет доступов в ПУ хостинга. Сайт не мой и есть только доступ в ПУ сайта и ФТП доступ.

M
На сайте с 04.12.2013
Offline
223
#3

1. Судя по тому, что вы сказали, сайт.рф - псевдоним site.ru, а значит добавляйте редирект в тот же самый .htaccess (см. ниже).

2. www.сайт.рф - может быть отдельным сайтом и размещаться совсем на другой площадке. Хотя скорее всего он лежит на той же площадке. Просмотрите все поддомены. Какая панель управления? К сведению: для кириллических доменов можно и не создавать поддомен www или разместить там заглушку с предупреждением, т.е. если у вас заглушка приемлемая, можно оставить так, как есть, или совсем отключить этот поддомен (удалить соотв. DNS-запись). В качестве первого шага для поиска заглушки можете проверить на совпадение IP-шники www.сайт.рф и сайт.рф (site.ru).

3. Редирект с www.сайт.рф на site.ru может выполняться тем же правилом, что и редирект с www.site.ru на site.ru, если весь контент собран в одном месте.

Содержимое .htaccess должно выглядеть как-то так:


RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\..+ [NC,OR]
RewriteCond %{HTTP_HOST} ^xn--80aswg.xn--p1ai$
RewriteRule ^.* http://site.ru%{REQUEST_URI} [R=301,L]

Зачем вам "RewriteCond %{HTTPS} !=on" (по идее можно написать проще: "RewriteCond %{HTTPS} off"), я не понял. Обычно такое условие используется для редиректа на https://...

Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
Putnik
На сайте с 02.11.2009
Offline
113
#4
miketomlin:
Содержимое .htaccess должно выглядеть как-то так:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\..+ [NC,OR]
RewriteCond %{HTTP_HOST} ^xn--80aswg.xn--p1ai$
RewriteRule ^.* http://site.ru%{REQUEST_URI} [R=301,L]

Добавил. Пробовал и внутрь <IfModule mod_rewrite.c> </IfModule> и за его пределами.

Ни какой реакции.

Вообще, для чего используется <IfModule mod_rewrite.c> </IfModule> в .htaccess ?

miketomlin:

Зачем вам "RewriteCond %{HTTPS} !=on" (по идее можно написать проще: "RewriteCond %{HTTPS} off"), я не понял. Обычно такое условие используется для редиректа на https://...

Я ж написал, сайт не мой. Так его сделали и настроили разработчики.

miketomlin:

2. www.сайт.рф - может быть отдельным сайтом и размещаться совсем на другой площадке. Хотя скорее всего он лежит на той же площадке. Просмотрите все поддомены. Какая панель управления? К сведению: для кириллических доменов можно и не создавать поддомен www или разместить там заглушку с предупреждением, т.е. если у вас заглушка приемлемая, можно оставить так, как есть, или совсем отключить этот поддомен (удалить соотв. DNS-запись). В качестве первого шага для поиска заглушки можете проверить на совпадение IP-шники www.сайт.рф и сайт.рф (site.ru).

IP-шники у всех 3-х одинаковые.

К сожалению не могу проверить ни поддомены, ни DNS, т.к. нет доступов в ПУ хостинга.

Разработчики его даже хозяину сайта не дают...

M
На сайте с 04.12.2013
Offline
223
#5

Проверьте, отрабатывает ли вообще .htaccess (редирект мог быть задан и в др. месте). Например, удалите .htaccess и проверьте, продолжает ли работать редирект. Или пропишите перенаправление на какой-нибудь другой сайт и проверьте, происходит ли оно.

Может, лучше обратиться к разработчикам.

A
На сайте с 18.05.2008
Offline
207
#6
Putnik:
Не пошло.
Добавил строки в .htaccess и при обращении и к сайт.рф и к site.ru стало вываливать 404

Ну теперь загадка наконец полностью складывается, учитывая что:

Putnik:
Добавляя материалы на site.ru они так же появляются и на сайте сайт.рф

Итого:

У вас домен сайт.рф приклеен алиасом(зеркалом) к домену site.ru.

Теперь правильный ответ на ваш вопрос №1 будет выглядеть так:

Сначала необходимо отклеить домен сайт.рф в панели управления хостингом или в панели управления доменом.(т.е. нужно сначала посмотреть где и как сделано "зеркало").

Затем необходимо в одной из панелей сделать редирект домена сайт.рф на нужный вам домен. Либо, если хостинг панель или регистратор домена не поддерживает такую функцию, то просто добавить домен сайт.рф в хостинг панель как самостоятельный отдельный домен, и затем залить в его директорию файл htaccess с указанным мной ранее содержимым.

Станислав
На сайте с 27.12.2009
Offline
237
#7

И никто про ip сервера не подумал?

Часто на некоторых хостингах по IP сервера отображается сайт выставленный по умолчанию на сервере. К этому IP и прикрепляют домены что позволяет просматривать сайт с другого домена находящего в три девятом царстве.

Выход тут один, создать домен в панельке (любой, хоть абракадабра.на), после этого указать его доменом по умолчанию на сервере (то бишь при обращении по IP сервера, будет открываться этот домен (папка)). Затем создаем index.php в директории нового домена где и ставим редирект на основной домен.

Мы там, где рады нас видеть.
A
На сайте с 18.05.2008
Offline
207
#8
Ms-Dred:
И никто про ip сервера не подумал?
Часто на некоторых хостингах по IP сервера отображается сайт выставленный по умолчанию на сервере.

Верно, так делают только некоторые хостеры, но только для своего главного хостинг сайта.

Хоть этот вариант и возможен - в случае наличия отдельного сервера под сайт ТС'а или наличия под него выделенного IP на хостинге.

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

M
На сайте с 04.12.2013
Offline
223
#9
addurl:
У вас домен сайт.рф приклеен алиасом(зеркалом) к домену site.ru.
Теперь правильный ответ на ваш вопрос №1 будет выглядеть так:
Сначала необходимо отклеить домен сайт.рф в панели управления хостингом или в панели управления доменом.(т.е. нужно сначала посмотреть где и как сделано "зеркало").
Затем необходимо в одной из панелей сделать редирект домена сайт.рф на нужный вам домен.

Я писал пример .htaccess, ориентируясь именно на наличие псевдонимов, о чем говорил ТС.

Либо, если хостинг панель или регистратор домена не поддерживает такую функцию, то просто добавить домен сайт.рф в хостинг панель как самостоятельный отдельный домен, и затем залить в его директорию файл htaccess с указанным мной ранее содержимым.

Как было сказано, такой возможности нет. Подождем, что ответит ТС на мою реплику: "Может, лучше обратиться к разработчикам".

Putnik
На сайте с 02.11.2009
Offline
113
#10
miketomlin:
Проверьте, отрабатывает ли вообще .htaccess

Может, лучше обратиться к разработчикам.

.htaccess обрабатывается. Как писал выше при внесении в него изменений стало вываливать 404.

Это я сделал в первую очередь. Написал клиенту, что необходимо сделать разработчикам, т.к. у меня не хватает доступов.

Уже дней 10 они в глухой обороне... :(

У них, разработчиков, вообще какое то странное отношение к своим клиентам. Человек заплатил за сайт и не мало, а получил его с таким количеством косяков. Каждый косяк они исправляли в течении 7-10 дней и то только после звонка. При чем сам клиент адекватный, не требует ни чего сверх, а просто чтобы сайт нормально работал.

---------- Добавлено 10.12.2013 в 15:02 ----------

Зачем <IfModule mod_rewrite.c> </IfModule> в .htaccess ?

Не проще было просто сделать запись типа:


RewriteEngine on
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]



---------- Добавлено 10.12.2013 в 15:08 ----------

Посмотрел DNS в панели регистрации доменов.

Для обоих сайтов прописаны одинаковые DNS на сервер разработчиков.

---------- Добавлено 10.12.2013 в 15:19 ----------

addurl:

У вас домен сайт.рф приклеен алиасом(зеркалом) к домену site.ru.
Теперь правильный ответ на ваш вопрос №1 будет выглядеть так:
Сначала необходимо отклеить домен сайт.рф в панели управления хостингом или в панели управления доменом.(т.е. нужно сначала посмотреть где и как сделано "зеркало").
Затем необходимо в одной из панелей сделать редирект домена сайт.рф на нужный вам домен. Либо, если хостинг панель или регистратор домена не поддерживает такую функцию, то просто добавить домен сайт.рф в хостинг панель как самостоятельный отдельный домен, и затем залить в его директорию файл htaccess с указанным мной ранее содержимым.

Доступа в ПУ хостинга нет.

А зачем расклеивать?

На одном своем сайте попробовал похожую ситуацию. site.ru на него сделан аллиас сайт.рф

Сделал в .htaccess запись:


RewriteEngine on
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.xn--b1af4ahcedae8l\.xn--p1ai$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^xn--b1af4ahcedae8l\.xn--p1ai$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

и всё обрабатывается нормально.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий