Difference between "Redirect permanent" vs. mod_rewrite
- by Stefan Lasiewski
This is an Apache httpd 2.2 server.
We require that access to this webserver be encrypted by HTTPS.
When web clients visit my site at http://www.example.org/$foo (port 80), I want to redirect their request to the HTTPS encrypted website at https://www.example.org/$foo .
There seem to be two common ways to do this:
First method uses the 'Redirect' directive from mod_alias:
<VirtualHost *:80>
Redirect permanent / https://www.example.org/
</VirtualHost>
Second method uses mod_rewrite:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
What is the difference between a "Redirect permanent" and the mod_rewrite stanza. Is one better then the other?