Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Политика канонизации обращения к сайту
 
 автор: Владимир55   (12.12.2011 в 13:31)   письмо автору
 
 

Как известно, существует четыре варианта обращения к сайту:

http://site.ru/
http://www.site.ru/
https://site.ru/
https://www.site.ru/

В качестве основного я выбираю вот этот: http://site.ru/
И для склейки с префиксом пишу в .htaccess:

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


А что делать с обращением через https ?

Может, надо бы перебросить его на http://site.ru/, но верно ли это политически?
А если перебросить, то как? Что дописать в .htaccess ?

Или отдавать ошибку 404?
А как, через ErrorDocument 404 не получится!

  Ответить  
 
 автор: cheops   (12.12.2011 в 14:59)   письмо автору
 
   для: Владимир55   (12.12.2011 в 13:31)
 

HTTPS - это обращение по протоколу HTTP, который шифруется SSL. Да, картинка может быть одна и та же, но вот обмен между клиентом и сервером очень отличается от того, что происходит при обращении по http://, для начала весь трафик очень надежно шифруется, т.е. перехватить его снифером практически невозможно, размер трафика возрастает в разы. Вообще https:// это не альтернатива http:// и использовать её где-попало не стоит. Зато на страницах авторизации, отправки логина и пароля, на страницах, где имеется продаваемый контент https:// будет очень кстати (и в этом случае http:// альтернативы не должно быть в принципе).

Т.е. http:// и https:// - это взаимоисключающие пути, если у вас есть путь по http://, у вас не должно быть такого же путей, начинающихся с https://, если у вас есть путь https://, у вас не должно быть таких же путей, начинающихся с http://.

  Ответить  
 
 автор: Владимир55   (12.12.2011 в 15:45)   письмо автору
 
   для: cheops   (12.12.2011 в 14:59)
 

Т.е. http:// и https:// - это взаимоисключающие пути, если у вас есть путь по http://, у вас не должно быть такого же путей, начинающихся с https://, если у вас есть путь https://, у вас не должно быть таких же путей, начинающихся с http://.

Да, именно так оно и есть!

Сайт обычный, без шифровки, и открывается по http:// . Но если обратиться по https, то получаем сообщение "Internet Explorer не может отобразить эту веб-страницу". И это не есть гуд.

Хочется при обращении по https либо перебросить на работающий адрес с http://, либо вывести страницу 404, содержащую соответствующее сообщение (это, как мне теперь, после Вашего пояснения, кажется, правильнее).

Возможно ли это и как бы осуществить?

  Ответить  
 
 автор: cheops   (12.12.2011 в 16:01)   письмо автору
 
   для: Владимир55   (12.12.2011 в 15:45)
 

>Но если обратиться по https, то получаем сообщение "Internet Explorer не может отобразить эту
>веб-страницу". И это не есть гуд.
А SSL вообще включен на сайте? От этого зависит даже то, где должны быть расположены правила.

>И это не есть гуд.
Хм... почему не гуд? Просто такой протокол не поддерживается, а если кому-то захочется использовать ftp:// с именем вашего сайта... Кстати, в соседней теме вы приводили критерии, в том числе и по отсутствию лишних пустых страниц и дублей. Любое rewrite-правило создает два варианта страницы, теоретически, поисковик может наткнуться на оба и найти одно и то же содержимое на страницах с двумя разными адресами. Поэтому этими правилами лучше не злоупотреблять, а использовать их в том случае, когда они реально нужны посетителям сайта. Поисковый робот не факт, что вам за них спасибо скажет - у него работы может прибавиться.

  Ответить  
 
 автор: Владимир55   (12.12.2011 в 16:39)   письмо автору
 
   для: cheops   (12.12.2011 в 16:01)
 

А может быть и так.

Хотя...

Если сайт открывается и по адресу http://site.ru/, и по адресу http://www.site.ru/, то имеет место доступ по двум адресам.

В общем, нежелательная ситуация.

А если при ображении по второму адресу происходит перманентный редирект на первый адрес, то, вроде бы, двух адресов уже нет.

Верно?

  Ответить  
 
 автор: cheops   (12.12.2011 в 16:50)   письмо автору
 
   для: Владимир55   (12.12.2011 в 16:39)
 

Я думаю роботы учитывают www. как неизбежную данность, их же не марсиане писали, а люди, которые в сети 20 лет, они знают, что 98% сайтов имеют www., и думаю считают, что это правильно. Отдавать преимущества тем, у кого его нет - нет никакого резона (скорее наоборот - это недочет и недосмотр администратора, читай "плохой хостинг"). Весть Интернет не переучишь и не переубедишь, кто-то будет использовать www., кто-то нет. Вы сами писали, что www. очень удобно использовать в текстах - это сигнал и знак, что дальше идет адрес, его глаз из текста сразу выделяет. Тем более это очень важно для англоязычных текстов - это было, есть и будет (причем это зачастую и изменить нельзя, а когда меняет - это вызывает бурю негодования, я сам чертыхаюсь, оказывается очень часто набирается то с www., то без).

  Ответить  
 
 автор: Владимир55   (13.12.2011 в 14:23)   письмо автору
 
   для: cheops   (12.12.2011 в 16:50)
 

Т.е. http:// и https:// - это взаимоисключающие пути, если у вас есть путь по http://, у вас не должно быть такого же путей, начинающихся с https://, если у вас есть путь https://, у вас не должно быть таких же путей, начинающихся с http://.

Вроде бы, вполне логично. Но вот взгляните:

http://www.sape.ru/
https://www.sape.ru/

Почему так?

  Ответить  
 
 автор: cheops   (13.12.2011 в 14:49)   письмо автору
 
   для: Владимир55   (13.12.2011 в 14:23)
 

Форма логина и пароля на главной странице, а убрать http - рука не поднялась и переадресацию тоже делать не захотели. Я бы тут тоже крепко задумался и наверное так и оставил бы два варианта - кто захочет использует https://. Вообще когда речь заходит о безопасности на поисковые системы часто плюют, тем более они авторизацию не проходят, но главная страница - это большая проблема (много функций на себе несет).

  Ответить  
 
 автор: Владимир55   (13.12.2011 в 14:57)   письмо автору
 
   для: cheops   (13.12.2011 в 14:49)
 

Вот я и хотел сделать так, чтобы при обращении https://site.ru/ отдавалось 404 и выводилось сообщение, что обращаться надо по протоколу http://site.ru/

Разумно?

(А то сейчас отклик - "сервер не ответил". Хорошо ли это?)

  Ответить  
 
 автор: cheops   (13.12.2011 в 15:31)   письмо автору
 
   для: Владимир55   (13.12.2011 в 14:57)
 

Да, 404 тоже наверное не очень хорошо... может постоянный редирект... А вообще включен ли https на сайте? Есть ли такие ссылки, как бы если ссылок нет, то вряд ли кто-то специально будет набирать https, http-то многим лень набирать... Как вариант сделать там страницу с текстом, что такое https и почему здесь его использовать не стоит... и все https перекидывать туда. Только так получится, если он у вас включен, если порт не прослушивается, Apache просто запрос не примет.

  Ответить  
 
 автор: Владимир55   (13.12.2011 в 16:22)   письмо автору
 
   для: cheops   (13.12.2011 в 15:31)
 

Да, понял, что с https я напрасно затеял.

Зато, вроде бы, удалось убрать индексную страницу из адреса. Взгляните пожалуйста, так нормально? (работает)
http://softtime.ru/forum/read.php?id_forum=5&id_theme=83822

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования