HTTPS для всего сайта

10

Я работаю над довольно стандартным веб-сайтом с общедоступным контентом и персональным / индивидуальным контентом для зарегистрированных пользователей. Я знаю, что мне нужно использовать HTTPS, когда пользователи входят в систему или отправляют данные кредитной карты. Есть ли причина, по которой я не должен использовать HTTPS для всего сайта?

BENV
источник

Ответы:

12

Да, есть причина, по которой вы не должны использовать его для всего сайта. Некоторые браузеры (в зависимости от марки и версии) не будут кэшировать содержимое из запросов HTTPS на диск, что может серьезно замедлить просмотр страниц пользователями, так как статические ресурсы будут загружаться при каждом запросе страницы (таблицы стилей, javascript, изображения заголовков и т. Д.) , Например, Mozilla утверждает, что:

«Кэширование диска сохраняет копии загруженных файлов на жестком диске, поэтому их не нужно загружать для повторного отображения. Эти страницы могут просматривать все, кто имеет разрешение на доступ к папке кэша. Страницы, передаваемые с шифрованием SSL, часто содержат конфиденциальную информацию и кэширование этих страниц на диск может представлять риск для конфиденциальности. Этот параметр определяет, следует ли кэшировать на страницы диска, которые были переданы с шифрованием SSL. "

То, как отдельные браузеры кэшируют HTTPS, несколько оспаривается, но все еще остается хороший шанс, что для многих пользователей будет отключено кэширование диска для запросов HTTPS.

Во-вторых, HTTPS требует « рукопожатия » для каждого запроса, и это сопряжено с некоторыми накладными расходами, которые повлияют на производительность и увеличат количество запросов (как правило, всего на несколько КБ - но это для каждого запроса, и это складывается). HTTP KeepAlive может ограничить это, но это все еще накладные расходы, которые вам не нужны для незащищенного контента.

Дэн Диплом
источник
2
Здесь все верно. Однако мы работаем с полноценным сайтом SSL уже около 5 лет, и у нас никогда не было жалоб от наших пользователей. Большинство из них являются корпоративными на IE6 и IE7, а некоторые на Firefox в наши дни. Кэширование, казалось, работало нормально, но у нас были явные правила истечения срока действия контента, установленные на многих изображениях, я не знаю, имело ли это значение.
Марк Хендерсон
5
Не угадай: test :-). Один простой (хотя и грубый и не завершенный на 100%) способ проверки работоспособности кэширования - проверка журналов сервера на наличие пользовательских запросов. Они запрашивают все изображения / файлы или только некэшированный контент? Отдельные пользователи плохо разбираются в задержке, но при агрегации миллисекунды могут быть видны, поэтому я, безусловно, позабочусь о том, чтобы скорость действительно была приемлемой.
Джон Мюллер
10

Если вы планируете использовать полный SSL, убедитесь, что для любых используемых вами сторонних сервисов (рекламный сервер, аналитика, инструменты общего доступа и т. Д.) Доступны версии SSL, или вы получите предупреждения о смешанном содержимом в некоторых браузерах.

JasonBirch
источник
5

Другая проблема заключается в том, что все , что вы обслуживаете с любой страницы, действительно должно проходить через SSL, включая сторонние ресурсы. Мы обнаружили, что это реальная проблема с чем-то вроде YouTube, например. Поскольку Google не делает видео YouTube доступно через SSL, это означает , что любое видео YouTube вы сделать хотите встроить в странице на вашем сайте , вызовет «Эта страница содержит безопасное и небезопасный контент» предупреждение. Хотя в большинстве браузеров это незаметно, в IE это огромный диалог, и некоторые пользователи могут довольно быстро покинуть ваш сайт, в страхе прижимая свои данные к груди.

Бобби Джек
источник
2

Вы должны также думать о росте. Как только у вас будет более одного веб-сервера, вам нужно будет решить: хотите ли вы предоставить HTTPS на каждом отдельном сервере, и если да, будете ли вы использовать тот же сертификат или сертификат для каждого сервера, как это часто рекомендуется. Я видел более распространенные установки, где меньше HTTPS-серверов, так как они обычно используются только для обработки конфиденциальных данных и больше HTTP-серверов, так как те, как правило, получают большую часть трафика. HTTPS добавляет немного больше сложности к каждой из ваших настроек. Просто что-то иметь в виду.

Гейб.
источник
1

Насколько я понимаю, единственная причина не использовать HTTPS на всем сайте - это то, что это замедлит работу вашего сервера, а посетители будут немного медленнее работать в Интернете. Это, как говорится, есть преимущества. В частности:

  1. Вам никогда не придется беспокоиться о размещении данных, которые вы хотите сохранить в безопасности, на любой странице вашего сайта. Вы не можете забыть.
  2. Пользователи заметят, что ваш сайт полностью зашифрован, и, возможно, чувствуют себя в большей безопасности при предоставлении вам своей информации.
  3. Пользователи знают, что ваш сайт принадлежит вашей компании и не был принят.

Помимо того, что вашим разработчикам легче не беспокоиться о показе защищенных данных на незашифрованной странице, на самом деле нет технической причины использовать HTTPS на каждой странице. По той же причине, есть очень мало причин, чтобы не делать этого.

Бен Хоффман
источник
Другая причина не использовать HTTPS на всем сайте ... будет использоваться большая пропускная способность, поскольку страницы не будут кэшироваться на стороне клиента (теоретически).
MrWhite
«Вам никогда не придется беспокоиться о размещении данных, которые вы хотите сохранить в безопасности, на любой странице вашего сайта». - Я не уверен, насколько это правда. Google по умолчанию будет индексировать _and cache_ (!) Эти страницы. И если запрашивается, кажется, служит кешированная версия как простой HTTP.
MrWhite
0

И последнее, но не менее важное: некоторые работодатели не любят, когда их сотрудники просматривают «зашифрованные» сайты https. Это касается оборонных / охранных компаний и организаций, поэтому, если у вас есть веб-сайт «https only», вы можете потерять некоторых из этих посетителей / клиентов, потому что их сеть просто не позволит им просматривать ваш сайт.

Радек
источник
У вас есть доказательства этого? Можете ли вы дать ссылку на статьи, которые поддерживают это требование?
Эндрю Лотт
У меня есть личный опыт работы с этой темой. Я управляю крупным военно-ориентированным сайтом, и пока мы тестировали настройку HTTPS, мы обнаружили, что это станет проблемой для большой части наших пользователей, просто потому, что их работодатели не разрешают HTTPS-серфинг из своей сети (даже доступ к банкам, википедии и другим сайтам через https невозможно). Я запустил еще одну ветку о том, как подойти к этой проблеме, когда Google заставляет нас переключиться на https - это не проблема, о которой все знают, но это может случиться, и людям, возможно, придется подумать об этом.
Радек
Я объясняю себе, что некоторым инструментам мониторинга необходимо отслеживать «содержимое» пакетов на прокси-сервере или любом «человеке посередине» между этими пользователями и веб-сайтами, чтобы иметь возможность отслеживать проблемы безопасности, секретность или что-то подобное, и с помощью SSL отключает такой мониторинг. Таким образом, https не разрешен в этих компаниях (я не говорю во всех, но, очевидно, по крайней мере, в некоторых из них, да)
Radek