Вернуться   Форум об интернет-маркетинге > >
Ответ
 
Опции темы
Старый 08.01.2018, 12:11   #11
miketomlin
Академик
 
Регистрация: 04.12.2013
Сообщений: 1,967
Репутация: 94776

По умолчанию Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Да, с двумя роботс я, видимо, погорячился. Немного неправильно понял написанное ТСом, наплевав при этом на здравый смысл и оф. рекомендации яши.

Цитата:
Сообщение от богоносец Посмотреть сообщение
И где ваше исключение для robots.txt?
ТС не просил, я и не написал.

Цитата:
Сообщение от SeVlad Посмотреть сообщение
Две не нужно
Ну по одному для каждого протокола, чтобы не городить универсальный, работающий в пределах тек. протокола.
miketomlin на форуме   Ответить с цитированием
Сказали спасибо:

Реклама
Старый 08.01.2018, 14:31   #12
богоносец
убивец демо†кратии
 
Аватар для богоносец
 
Регистрация: 30.01.2007
Адрес: совок_б/к
Сообщений: 9,752
Репутация: 1020602

По умолчанию А что надо учитывать при переклейке зеркал?

Цитата:
Сообщение от miketomlin Посмотреть сообщение
Да, с двумя роботс я, видимо, погорячился.
С двумя Host:

Хотя Яндексу она не нужна

http://yandex.ru/robots.txt 200 OK
https://yandex.ru/robots.txt 200 OK
http://www.yandex.ru/robots.txt 200 OK
https://www.yandex.ru/robots.txt 200 OK

И по всем протоколам.субдоменам Яндексу надо правильную Host:

А с /index.php табличка зеркал трёхмерной получится... и это не предел.

https://www.google.ru/robots.txt 200 OK
http://www.google.ru/robots.txt 200 OK
http://google.ru/robots.txt 301 Location: https://www.google.ru/robots.txt
https://google.ru/robots.txt 301 Location: https://www.google.ru/robots.txt

Не чтут бота щукина!

http://www.google.ru//robots.txt 200 OK
http://www.google.ru//robots.txt?идиоты 200 OK
богоносец вне форума   Ответить с цитированием
Старый 09.01.2018, 14:25   #13
blaza
Студент
 
Регистрация: 15.11.2006
Сообщений: 46
Репутация: 1232

ТопикСтартер Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Цитата:
Сообщение от miketomlin Посмотреть сообщение
Делайте в точности, как сказали: две непересекающиеся версии редиректа с www на без www с сохранением тек. протокола. Исключение для роботс, как выше написали, думаю, не помешает, если сможете организовать отдачу отдельной версии файла для каждого протокола (с разным значением директивы Host).

---------- Добавлено 08.01.2018 в 03:21 ----------

Чтобы не париться с универсальностью, делается в лоб:
Код:
RewriteCond %{HTTPS} =on [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*) https://%1/$1 [R=301,L]
И рядом то же самое для HTTP.

---------- Добавлено 08.01.2018 в 03:25 ----------

К сожалению mod_rewrite не понимает абс. адрес без указания схемы (//...).
Правильно я понял, вот так:

RewriteCond %{HTTPS} =on [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*) https://%1/$1 [R=301,L]

RewriteCond %{HTTP} =on [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*) http://%1/$1 [R=301,L]
blaza вне форума   Ответить с цитированием
Старый 09.01.2018, 18:33   #14
miketomlin
Академик
 
Регистрация: 04.12.2013
Сообщений: 1,967
Репутация: 94776

По умолчанию Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Нет такой переменной (см. http://u75.ru/rewritecond ). Меняйте значение (off) или используйте условие от противного, как ранее в теме уже показывали.
miketomlin на форуме   Ответить с цитированием
Старый 10.01.2018, 11:12   #15
blaza
Студент
 
Регистрация: 15.11.2006
Сообщений: 46
Репутация: 1232

ТопикСтартер Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Цитата:
Сообщение от miketomlin Посмотреть сообщение
Нет такой переменной (см. http://u75.ru/rewritecond ). Меняйте значение (off) или используйте условие от противного, как ранее в теме уже показывали.
Я не спец в редиректах, поэтому и обратился сюда.
Я правильно вас понял, вот так нужно:

RewriteCond %{HTTPS} =on [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*) https://%1/$1 [R=301,L]

RewriteCond %{HTTPS} =off [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*) http://%1/$1 [R=301,L]
blaza вне форума   Ответить с цитированием
Старый 10.01.2018, 12:12   #16
Sitealert
Слесарь-сайтосборщик
 
Регистрация: 30.09.2016
Адрес: Замкадье
Сообщений: 5,079
Репутация: 348366

По умолчанию Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Код:
RewriteCond %{HTTPS} =on
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Но это если на сервере есть переменная HTTPS
__________________
Отпилю лишнее, прикручу нужное, выправлю кривое.
Вытравлю вредителей.
Sitealert вне форума   Ответить с цитированием
Старый 10.01.2018, 13:03   #17
miketomlin
Академик
 
Регистрация: 04.12.2013
Сообщений: 1,967
Репутация: 94776

По умолчанию Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Цитата:
Сообщение от blaza Посмотреть сообщение
Я не спец в редиректах, поэтому и обратился сюда.
Я правильно вас понял, вот так нужно
Да, как вариант.

Сюда не обращаются, здесь общаются все желающие

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

P.S. RewriteEngine не забудьте включить отдельной директивой.
miketomlin на форуме   Ответить с цитированием
Сказали спасибо:
Старый 10.01.2018, 14:06   #18
blaza
Студент
 
Регистрация: 15.11.2006
Сообщений: 46
Репутация: 1232

ТопикСтартер Re: Как сделать параллельный редирект http с www на без www и https с www на без www

Цитата:
Сообщение от miketomlin Посмотреть сообщение
Да, как вариант.

Сюда не обращаются, здесь общаются все желающие

P.S. RewriteEngine не забудьте включить отдельной директивой.
Спасибо за общение и помощь )))
Всё работает, как надо.
blaza вне форума   Ответить с цитированием
Ответ

Метки
301 , https



Опции темы

Быстрый переход


Регистрация Справка Календарь Поддержка Все разделы прочитаны