Welcome! Log In Create A New Profile

Advanced

Re: URL-Rewriting not working

Lucas Rolff
April 09, 2017 11:48AM
In general try to avoid using the if directive too much.
https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/

For what you're trying to do, using a map would be the cleanest (and nicest) way I believe – someone can correct me if they want :-D

From: nginx <nginx-bounces@nginx.org<mailto:nginx-bounces@nginx.org>> on behalf of Ajay Garg <ajaygargnsit@gmail.com<mailto:ajaygargnsit@gmail.com>>
Reply-To: "nginx@nginx.org<mailto:nginx@nginx.org>" <nginx@nginx.org<mailto:nginx@nginx.org>>
Date: Sunday, 9 April 2017 at 17.37
To: "nginx@nginx.org<mailto:nginx@nginx.org>" <nginx@nginx.org<mailto:nginx@nginx.org>>
Subject: Re: URL-Rewriting not working

Hi Francis.

On Sun, Apr 9, 2017 at 8:47 PM, Francis Daly <francis@daoine.org<mailto:francis@daoine.org>> wrote:
On Sun, Apr 09, 2017 at 06:36:51PM +0530, Ajay Garg wrote:

Hi there,

> Got it Francis !!

Good news.

> location / {
> auth_basic 'Restricted';
> auth_basic_user_file
> /home/20da689b45c84f2b80bc84d651ed573f/.htpasswd;
>
> if ($remote_user =
> "20da689b45c84f2b80bc84d651ed573f") {
> proxy_pass
> https://127.0.0.1:2000;
> }
>
> }

When you come to add the second user, you will see that you want one
file with all the user/pass details.


Yes, I have already changed it to use just one file.
Upon that, would not just multiple sections of "if" checks for $remote_user suffice, something like ::

#########################################################################
server {
listen 2000 ssl;

ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;

location / {
auth_basic 'Restricted';
auth_basic_user_file /etc/nginx/ssl/.htpasswd;

if ($remote_user = "user1") {
proxy_pass https://127.0.0.1:2001https://127.0.0.1:2000;
}

if ($remote_user = "user2") {
proxy_pass https://127.0.0.1:2002https://127.0.0.1:2000;
}

# and so on ....

}
}
#########################################################################

Looking forward to hearing back from you.


Thanks and Regards,
Ajay




You will probably also see that it will be good to use a map
(http://nginx.org/r/map) to set a variable for the port to connect to,
based on $remote_user. Then your main config becomes just "proxy_pass
http://127.0.0.1:$per_user_port;".

Note that I have not tested that, and expect that there may be some more
subtleties involved, such as perhaps requiring an explicit proxy_redirect
directive.

Note also that you will probably want to set a default value for
$per_user_port, and make sure that something sensible happens when that
value is used -- probably a response along the lines of "something isn't
fully set up on the server yet; please wait or let us know", so the user
is not confused.

Good luck with it,

f
--
Francis Daly francis@daoine.org<mailto:francis@daoine.org>
_______________________________________________
nginx mailing list
nginx@nginx.org<mailto:nginx@nginx.org>
http://mailman.nginx.org/mailman/listinfo/nginx



--
Regards,
Ajay
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

URL-Rewriting not working

Ajay Garg April 08, 2017 09:12AM

Re: URL-Rewriting not working

Anoop Alias April 08, 2017 09:20AM

Re: URL-Rewriting not working

Ajay Garg April 08, 2017 09:26AM

Re: URL-Rewriting not working

Anoop Alias April 08, 2017 09:42AM

Re: URL-Rewriting not working

Ajay Garg April 08, 2017 09:46AM

Re: URL-Rewriting not working

Francis Daly April 09, 2017 06:50AM

Re: URL-Rewriting not working

Ajay Garg April 09, 2017 07:58AM

Re: URL-Rewriting not working

Francis Daly April 09, 2017 08:30AM

Re: URL-Rewriting not working

Ajay Garg April 09, 2017 08:48AM

Re: URL-Rewriting not working

Ajay Garg April 09, 2017 09:08AM

Re: URL-Rewriting not working

Francis Daly April 09, 2017 11:18AM

Re: URL-Rewriting not working

Ajay Garg April 09, 2017 11:38AM

Re: URL-Rewriting not working

Lucas Rolff April 09, 2017 11:48AM

Re: URL-Rewriting not working

Ajay Garg April 10, 2017 12:54AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 285
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready