Apache has the best SSL/HTTPS support and can be controlled by the httpd.conf file or other HTTPD server configuration file. This htaccess tutorial has htaccess example code to make it easy to secure and use HTTPS and SSL with Apache.
« Security with Apache htaccess | .htaccess Tutorial Index | » Apache Variable fun (mod_env)
Fixes double-login problem and guarantees that htpasswd basic authorization can only be entered using HTTPS.
NOTE: You will only find this method on this site and it is the most secure way to do this.
SSLOptions +StrictRequire SSLRequireSSL SSLRequire %{HTTP_HOST} eq "askapache.com" ErrorDocument 403 https://askapache.com
NOTE:The HTTPS variable is always present,evenif mod_ssl isn't loaded!
RewriteCond %{HTTPS} !=on RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteCond %{SERVER_PORT} !^443$ RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteCond %{SERVER_PORT} ^80$ RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteRule "^/normal/secure(/.*)" "https://%{HTTP_HOST}$1" [R=301,L]
RewriteCond %{HTTPS} !=on RewriteRule "^(/secure/.*)" "https://%{HTTP_HOST}$1" [R=301,L]
This lets you use hyperlinks like this
/doc.html:SSL -- > https://google.com/doc.html /doc.html:NOSSL --> http://google.com/doc.html
RewriteRule ^/(.*):SSL$ https://%{SERVER_NAME}/$1 [R,L] RewriteRule ^/(.*):NOSSL$ http://%{SERVER_NAME}/$1 [R,L]
MORE: Apache SSL in htaccess examples and https/ssl forum
« Security with Apache htaccess | .htaccess Tutorial Index | » Apache Variable fun (mod_env)