How to rewrite specific URL to use https
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Hi,
I have a virtual host with a <VirtualHost> section like this:
NameVirtualHost *
<VirtualHost *>
CheckSpelling on
ServerName server.macalester.edu
DocumentRoot "/var/www/server/htdocs"
RewriteEngine on
RewriteLogLevel 2
RewriteLog "/usr/local/apache/logs/server.mac.edu.rewrite.log"
RewriteMap lowercase int:tolower
RewriteRule (.*) ${lowercase:$1} [PT]
</VirtualHost>
I need to force all accesses to a particular directory (and subdirs) to https, e.g.
http://server.macalester.edu/restricted and
http://server.macalester.edu/restricted/anything/at/all
should be rewritten as
https://server.macalester.edu/restricted and
https://server.macalester.edu/restricted/anything/at/all
...respectively.
I've read the FAQ and mod_rewrite guide but am not having luck. I've used mod_rewrite before to do https rewrites, but not quite like this, and I can't get it to work.
I've tried this:
<VirtualHost *>
CheckSpelling on
ServerName server.macalester.edu
DocumentRoot "/var/www/server/htdocs"
RewriteEngine on
RewriteLogLevel 2
RewriteLog "/usr/local/apache/logs/server.mac.edu.rewrite.log"
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} ^/restricted(.*)$ [NC]
RewriteRule ^/restricted(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R,NC]
RewriteMap lowercase int:tolower
RewriteRule (.*) ${lowercase:$1} [PT]
</VirtualHost>
Then in the mod_rewrite log, I see messages like:
rewrite /restricted/ -> https://server.macalester.edu/restricted/
(ok, good)
But then I see
rewrite https://server.macalester.edu/restricted/ -> https://server.macalester.edu/restricted/
...which is bad because that is a useless rewrite, and maybe an infinite loop.
I *thought* the RewriteCond statements had an implicit [AND] after them, so I thought my rules above would translate to:
If the server port is not 443, and the requested URI starts with "restricted" then rewrite the request as https.
Apparently that is not what it means. What am I doing wrong?
Help! and Thanks,
Ted
[Index of Archives]
[Open SSH Users]
[Linux ACPI]
[Linux Kernel]
[Linux Laptop]
[Kernel Newbies]
[Security]
[Netfilter]
[Bugtraq]
[Squid]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Samba]
[Video 4 Linux]
[Device Mapper]