среда, 28 марта 2012 г.

Конфигурация Apache2 HTTP Server: редирект с HTTPS на HTTP

Выполняется средствами mod_rewrite:
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}
При этом, однако, корректная настройка SSL все равно необходима, т.к. редирект осуществляется после установления защищенного соединения.
Можно также явно указать, каким кодом отвечать при редиректе. Например, для отправки кода 301 ("Перемещено окончательно") нужно:
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=permanent]
Если некоторые URL`ы требуется всё же обрабатывать по HTTPS, нужно исключить их из правила:
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteCond $0 !/needhttps/
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} 

Комментариев нет:

Отправить комментарий