Должен перенаправить весь трафик к https

Я хочу перенаправить любой трафик, который переходит к http://example.com к https://example.com

то же для http://example.com/about к https://example.com/about

Я думал, что это будет что-то вроде этого:

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

30
задан animuson 13 July 2010 в 17:30
поделиться

1 ответ

У меня это работает:

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Если трафик поступает по протоколу HTTP без SSL, то перенаправьте его на HTTP-эквивалент любой страницы, к которой пользователь изначально пытался получить доступ. Он также не включает никаких параметров mod_rewrite, поэтому его легко читать.

Дополнительная напыщенная речь: почему каждый чувствует необходимость явно установить HTTP-код перенаправления и пометить одну из своих перезаписей как «последнюю»? Серьезно, я видел десятки одинаковых правил htaccess всего за последние несколько дней.

70
ответ дан 27 November 2019 в 23:10
поделиться