Kompx.com or Compmiscellanea.com

Редирект с HTTP на HTTPS в .htaccess

Веб-серверы : Apache + nginx

Редирект с HTTP на HTTPS в случае, когда веб-сервер, выдающий страницы, находится за обратным прокси-сервером или балансировщиком нагрузки.

Веб-серверы: Apache + nginx. Поддержка SSL включена. SSL-сертификат приобретен, одобрен и установлен. То есть, все настроено и работает. Так что осталось только сделать редирект с HTTP на HTTPS. Директивы для файла .htaccess:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\. [NC]

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

RewriteCond %{HTTP:X_FORWARDED_PROTO} !https [NC]

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Редирект с HTTP на HTTPS

-- Включить работу механизма преобразования:

RewriteEngine On

-- Если доменное имя без www:

RewriteCond %{HTTP_HOST} !^www\. [NC]

-- Тогда заменить его на домен с www:

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

-- Если HTTPS отсутствует:

RewriteCond %{HTTP:X_FORWARDED_PROTO} !https [NC]

-- Тогда заменить домен без HTTPS доменом с HTTPS:

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Примечания

1. X_FORWARDED_PROTO может называться X-Forwarded-Proto или еще как-нибудь иначе. От обратного прокси-сервера или балансировщика нагрузки надо получить сведения о том первоначальном запросе, который он получает. Обратные прокси-сервера или балансировщики нагрузки могут предоставлять веб-серверу эту информацию. Может быть отправлен заголовок X_FORWARDED_PROTO или X-Forwarded-Proto или называемый как-то иначе, содержащий название протокола (HTTP или HTTPS). Так обычно. Но не всегда. Поэтому в каком-то числе случаев как именно получить название протокола возможно придется выяснять экспериментальным путем.

2. Другим вариантом может быть просто установить переменную среды (если для данного сервера это возможно):

SetEnvIf X_FORWARDED_PROTO https HTTPS=on

Тогда директивы для файла .htaccess будут такими:

RewriteEngine On

SetEnvIf X_FORWARDED_PROTO https HTTPS=on

RewriteCond %{HTTP_HOST} !^www\. [NC]

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

RewriteCond %{HTTP:HTTPS} !on [NV]

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

3. Документация Apache Module mod_rewrite (in English): http://httpd.apache.org/docs/current/mod/mod_rewrite.html


Aliosque subditos et thema

 

CSS только для Firefox

 

CSS только для браузера Firefox: В Firefox этот текст красного цвета HTML / XHTML. Код: <p>В Firefox этот текст красного цвета</p> CSS. Код: @-moz-document url-prefix() {p {color: #f00;}} В отличии от способа применения CSS только для Opera, по существу является хаком - поскольку правило изначально предназначалось для другой цели. Однако отсутствие поддержки в других браузерах позволяет изолировать код для использования только веб браузером Firefox. [ 1 ] Другие браузеры с движком Gecko, как SeaMonkey 1.0+ или более старый Netscape 9.0, так же поддерживают данный CSS хак. [ 2 ] Разные версии Internet Explorer, Google Chrome, Opera, Safari реагируют на хак так, как им и полагается - эти браузеры игнорируют весь код хака. [ 3 ] Есть еще один браузер, где текст становится красным - ELinks, текстовый веб браузер с некоторой поддержкой CSS.

Internet Explorer 3. Скриншоты 1

 

Internet Explorer 3, запущенный под Windows 7 (32-bit). Скриншоты 1. Internet Explorer 3: windows.microsoft.com/en-US/windows/upgrade-your-browser Internet Explorer 3: w3schools.com/browsers/browsers_stats.asp Internet Explorer 3: en.wikipedia.org/wiki/Internet_Explorer_3 Internet Explorer 3: ebay.com Internet Explorer 3: kompx.com/en/netscape-3-screenshots-1.htm Internet Explorer 3: twitter.com Скачать Internet Explorer 3: пак, содержащий Internet Explorer версий 3.0, 4.01, 5.01, 5.5, 6.0. В процессе установки можно выбрать какую именно версию установить, или установить несколько, или установить все. Очень вероятно, что все версии, кроме Internet Explorer 3, не будут работать даже в 32-битной Windows 7. Так что если вы хотите попробовать все старые версии Internet Explorer, нужно использовать Windows XP или еще более ранние варианты. Но Internet Explorer 3 работает под 32-битной Windows 7 вполне хорошо.