rewrite all locations to https except one
Maxim Dounin
mdounin at mdounin.ru
Thu Oct 18 09:22:26 UTC 2012
Hello!
On Thu, Oct 18, 2012 at 05:17:27AM -0400, karolis wrote:
> Hi Everyone,
>
> i have this problem with rewrite. As subject says i want to rewrite all
> locations to https except one, that should remain http. But that one with
> http isn't redirecting properly. I'm using nginx 1.2.2 version. Here's my
> conf:
>
> server {
> client_max_body_size 500M;
> listen 80;
> server_name alis.am.lt;
> #rewrite ^(.*) https://$host$1 permanent;
> #rewrite ^ https://$server_name$request_uri? permanent;
>
> location / {
> rewrite ^(.*) https://$host$1 permanent;
> proxy_pass http://www_serveriai_80;
> proxy_set_header Host $http_host;
> }
Just a side note: it doesn't make sense to write proxy_pass here.
Using
location / {
rewrite ^(.*) https://$host$1 permanent;
}
would be enough. Or, better,
location / {
return 301 https://$host$request_uri;
}
> location /SomeService {
> rewrite ^(.*) http://$host$1 permanent;
This will create infinite loop, as you try to redirect back to the
same address. Just remove this rewrite.
> proxy_method POST;
> proxy_pass http://10.255.6.120:8080/SomeService;
> proxy_set_header Host $http_host;
> #proxy_redirect default;
> #proxy_set_header Host $host;
> #proxy_set_header X-Real-IP $remote_addr;
> #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> }
>
>
> I really appreciate any help. Thanks!
--
Maxim Dounin
http://nginx.com/support.html
More information about the nginx
mailing list