Это сервер Apache httpd 2.2.
Мы требуем, чтобы доступ к этому веб-серверу был зашифрован HTTPS.
Когда веб-клиенты посещают мой сайт по адресу http://www.example.org/ $ foo (порт 80), я хочу перенаправить их запрос на зашифрованный HTTPS-сайт по адресу https://www.example.org/ $ foo.
Кажется, есть два распространенных способа сделать это:
Первый метод использует директиву Redirect из mod_alias:
<VirtualHost *:80>
Redirect permanent / https://www.example.org/
</VirtualHost>
Второй метод использует mod_rewrite:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
В чем разница между перманентом Redirect и разделом mod_rewrite. Один лучше другого?
Redirect
директива лучше обрабатывает перенаправление с http на https. Смотрите комментарий Стефана ниже и проверить этот раздел Apache документации: httpd.apache.org/docs/current/rewrite/avoid.html#redirect