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

 

Оформление нумерованных списков

 

Цифры-маркеры нумерованного списка, выделенные жирным начертанием без использования дополнительных тегов HTML: List item List item List item HTML / XHTML. Code: <ol> <li>List item</li> <li>List item</li> <li>List item</li> </ol> CSS. Code: ol {counter-reset: item;} ol li {display: block;} ol li:before {content: counter(item) ". "; counter-increment: item; font-weight: bold;} В настоящий момент нет явного способа форматировать только цифры-маркеры нумерованного списка. Но вместо стандартного механизма автоматической нумерации нумерованных списков можно использовать CSS счётчик. Это позволяет оформлять конкретно маркеры. Как в примере, где числа, отмечающие начало элементов нумерованного списка выделены жирным начертанием. С помощью этого способа так же возможно вместо точки после цифры использовать другие знаки. Например, закрывающую скобку " ) ". Или управлять пробелами между цифрой, разделительным знаком и содержимым, следующим за ними в элементе нумерованного списка. [ 1 ] As well as Netscape 9.0+. [ 2 ] As well as Netscape 9.0+.

Выравнивание по центру с помощью JavaScript и CSS

 

Выравнивание содержимого страницы по центру, по ширине и по высоте с помощью JavaScript и CSS. По центру выравнивается контейнер, в котором находится всё содержимое веб-страницы. Два случая: 1. Контейнер выравнивается по центру, если разрешение экрана монитора равно или больше 1024x768 - [ Открыть страницу-пример ] 2. Контейнер выравнивается по центру, если разрешение экрана монитора равно или больше 1024x768 + курсор мыши наводится на ссылку в одном из элементов содержимого страницы - [ Открыть страницу-пример ] Выравнивание по центру, по ширине и по высоте с помощью JavaScript и CSS. Случай первый. По шагам. 1. Создается страница, чьей частью будет элемент, который будет выравниваться по центру, по ширине и по высоте с помощью JavaScript и CSS: HTML / XHTML. Код: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru"> <head> <title>Выравнивание по центру с помощью JavaScript и CSS. Первый случай. Шаг 1</title> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251" /> <link rel="stylesheet" type="text/css" href="1.css" /> </head> <body>   </body> </html> CSS. Код: html {height: 100%; margin: 0px;} body {background-color: #ffffff; margin: 0px; height: 100%;} 2. В теле данной страницы создается элемент A (серый цвет) блочного уровня c явно указанными размерами, например, 800 на 500 пикселов и относительным позиционированием. [ Результат ]. HTML / XHTML. Код: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru"> <head> <title>Выравнивание по центру с помощью JavaScript и CSS. Первый случай. Шаг 2</title> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251" /> <link rel="stylesheet" type="text/css" href="2.css" /> </head> <body> <div class="element_A">&nbsp;</div> </body> </html> CSS.