conditional auth_basic

Cedric Jeanneret cedric.jeanneret at camptocamp.com
Tue Oct 5 16:00:11 MSD 2010


Ok, thank you for your answer.

A bit ugly, knowing we can put some conditions in nginx config file ;).

But this way is working.

Cheers,

C.

On Tue, 5 Oct 2010 15:40:30 +0400
Maxim Dounin <mdounin at mdounin.ru> wrote:

> Hello!
> 
> On Tue, Oct 05, 2010 at 07:33:40AM +0200, Cedric Jeanneret wrote:
> 
> > Hello,
> > 
> > I have a special setup involving a wildcard :
> > server {
> >   server_name         *.domain.ltd
> >   access_log          /var/log/nginx/itnux_acces.log main;
> >   error_log           /var/log/nginx/itnux_error.log info;
> >   add_header X-Devel  "$host - production site";
> > 
> > 
> >   location / { 
> >     proxy_pass        http://localhost:9095;
> >     proxy_set_header  Host $host;
> >   }
> > }
> > 
> > 
> > I'd like to add some auth_basic, only if $host is NOT "demo.domain.ltd".
> > 
> > I thought I could make it like that:
> >   location / { 
> >     proxy_pass        http://localhost:9095;
> >     proxy_set_header  Host $host;
> >     if ($host != 'demo.domain.ltd') {
> >       auth_basic  "Not for everyone ;)";
> >       auth_basic_user_file  /var/www/vhosts/domain.ltd/htaccess;
> >     }
> >   }
> > 
> > But it seems that nginx doesn't like it:
> > nginx -t
> > [emerg]: "auth_basic" directive is not allowed here in /etc/nginx/vhosts/wildcard.domain.ltd.conf:17
> > configuration file /etc/nginx/nginx.conf test failed
> > 
> > How can I do this ? Do I have to declare "demo.domain.ltd", and then the wildcard in two distinct servers ?
> 
> Yes, use two distinct server{} blocks.
> 
> server {
>    server_name *.domain.ltd;
> 
>    auth_basic ...
> 
>    ...
> }
> 
> server {
>    server_name demo.domain.ltd;
> 
>    ...
> }
> 
> Maxim Dounin
> 
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://nginx.org/mailman/listinfo/nginx


-- 
Cédric Jeanneret                 |  System Administrator
021 619 10 32                    |  Camptocamp SA
cedric.jeanneret at camptocamp.com  |  PSE-A / EPFL
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://nginx.org/pipermail/nginx/attachments/20101005/84271e41/attachment.pgp>


More information about the nginx mailing list