[Pound Mailing List] Send login and register to https - redirect loop
mark hardwick <mark-mvs37XRtKj5Wk0Htik3J/[email protected]>
| Newsgroups | gmane.comp.web.pound.general |
|---|---|
| Message-ID | <[email protected]> |
Further to last
I increased the log level (should have done that before sorry)
And it appears that the header is never being added by the HTTPSListener
The relevant lines in the log are:
redirect to https://flooting.com/login [REDIRECT/302] -> this *should* set IS_SSL to SSL
strip per-dir prefix: /home/flooting/src/YMGN/trunk/www/flooting/login -> login
applying pattern '^(login|register|payment.*|gopro)$' to uri 'login'
RewriteCond: input='' pattern='!^SSL$' => matched
Input should at this stage be IS_SSL because the header should have been added.
Cheers
Mark.
Hi All
I've been using pound 2.5 for some time and it's been working nicely.
I'm just in the process of building a new LB using pound 2.6 and I'm hitting a problem
I'm not certain it's related to the version.
Anyway, my current load balancer is handling SSL termination for me.
I've created some rules so that people accessing the login or registration pages are redirected to https.
That's been working fine.
On 2.6 the same configuration does not work. When I try and access login i end up in a redirect loop rather then being redirected to the page.
here are the relevant files;
pound.cfg:
ListenHTTP
Address <IP address>
Port 80
#RewriteLocation 2 was required with 2.5 to make this work
RewriteLocation 2
#Normal service statements...
ListenHTTPS
Address <IP address>
Port 443
Cert "/etc/ssl/localcerts/site.pem"
CAList "/etc/ssl/localcerts/gd_bundle.crt"
#Add a header so we know the connection has passed via https.
AddHeader "IS_SSL: SSL"
RewriteLocation 2
Then, on the web servers the .htaccess file is as follows;
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
# force https for /login and /register
# first check that we DON'T have the IS_SSL header set to SSL (it would only be set when we pass through ListenHTTPS on the LB
RewriteCond %{HTTP:IS_SSL} !^SSL$
# if it's not set, rewrite to HTTPS for these pages.
RewriteRule ^(login|register|payment.*|gopro)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
# don't do anything for images/css/js (leave protocol as is)
RewriteRule \.(woff|gif|jpe?g|png|css|js)$ - [NC,L]
# force http for all other URLs
RewriteCond %{HTTP:IS_SSL} ^SSL$
RewriteCond %{REQUEST_URI} !^/(login|register|payment.*|gopro)$
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
The log output (as you can see it just loops).
strip per-dir prefix: /home/flooting/src/YMGN/trunk/www/flooting/login -> login
applying pattern '^(login|register|payment.*|gopro)$' to uri 'login'
rewrite 'login' -> 'https://flooting.com/login'
explicitly forcing redirect with https://flooting.com/login
trying to replace prefix /home/flooting/src/YMGN/trunk/www/flooting/ with /
escaping https://flooting.com/login for redirect
redirect to https://flooting.com/login [REDIRECT/302]
strip per-dir prefix: /home/flooting/src/YMGN/trunk/www/flooting/login -> login
applying pattern '^(login|register|payment.*|gopro)$' to uri 'login'
rewrite 'login' -> 'https://flooting.com/login'
explicitly forcing redirect with https://flooting.com/login
trying to replace prefix /home/flooting/src/YMGN/trunk/www/flooting/ with /
escaping https://flooting.com/login for redirect
redirect to https://flooting.com/login [REDIRECT/302]
strip per-dir prefix: /home/flooting/src/YMGN/trunk/www/flooting/login -> login
applying pattern '^(login|register|payment.*|gopro)$' to uri 'login'
rewrite 'login' -> 'https://flooting.com/login'
explicitly forcing redirect with https://flooting.com/login
trying to replace prefix /home/flooting/src/YMGN/trunk/www/flooting/ with /
As I said, this has been working fine.
The only change I'm aware of is the version change, but perhaps there is something else I've missed in the new machine.
Any thoughts greatly appreciated.
Mark.
--
To unsubscribe send an email with subject unsubscribe to [email protected]
Please contact [email protected] for questions.