nginx auth_basic with proxy pass to tomcat

Tharanga Abeyseela tharanga.abeyseela at
Wed Nov 7 01:43:40 UTC 2012

Hi Guys,

I need to add basic auth to my home page (index.html)  (Served by
nginx)  and other directories resides on tomcat7. is there anyway i
can add only authentication to index.html . i was using the following
nginx configuration.

server {
      access_log  /var/log/nginx/access.log;
      error_log   /var/log/nginx/error.log;
      index       index.html;
      root        /var/www/;
      server_name xxxxxxxx;

      location / {
        auth_basic "Restricted";
        auth_basic_user_file /var/www/.htpass;

 location /next {
        proxy_pass             http://localhost:8080/next;
        proxy_redirect         off;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_max_temp_file_size 0;

when i try to add the above config, it asks for the user/pass, but it
asks for the user/pass when i try to access /next. but i need to add
authentication only to index.html. problem is  using the root
directory, so all requests will be tunneled through root and prompted
for a password. but is there any way i can restrict access only to
index.html, once it authenticated, users will be able to access tomcat
paths .

Thanks in advance,

More information about the nginx mailing list