ngx_http_auth_basic_module :(

Igor Sysoev is at rambler-co.ru
Wed May 28 17:47:32 MSD 2008


On Wed, May 28, 2008 at 08:38:15PM +0700, Denis F. Latypoff wrote:

> Hello Igor,
> 
> Wednesday, May 28, 2008, 8:03:01 PM, you wrote:
> 
> > Приветствую!
> 
> > Закрыл доступ к каталогу /edit/ через директивы auth_basic*
> > Файл паролей сгенерирован апачевской утилиткой. При обращении к
> > каталогу нгинкс выдает запрос на имя-пароль, после удачной
> > аутентификации на любой запрашиваемый файл отвечает 404 Not found.
> > В чем м.б. проблема? Аутентификация судя по всему дачная, т.к. при
> > вводе белиберды в качестве логина-пароля запрос вылетает еще раз.
> 
> > Nginx 0.7.0
> 
> > Ниже привожу конфиг:
> 
> >     server {
> >         listen       server-adress;
> >         server_name  server-name;
> 
> >         access_log  logs/access.log  main;
> >         error_log   logs/error.log;
> 
> >         location / {
> >             root   /data/apache/docroot;
> >             index  index.php index.html index.htm;
> -             if (!-f $request_filename) {
> -                 rewrite (.*) /index.php last;
> -             }
> +             error_page 404 = @backend_index;
> >         }
> 
> +         location @backend_index {
> +             root           /data/apache/docroot;
> +             fastcgi_pass   unix:/tmp/php.sock;
> +             fastcgi_param  SCRIPT_FILENAME /data/apache/docroot/index.php;
> +             include        fastcgi_params;
> +         }

@backend_index не нужен. Достаточно

            error_page 404 = /index.php;

> >         location /edit/ {
> >             auth_basic            "closed site";
> >             auth_basic_user_file  /data/apache/.htpasswd;
> +             error_page 404 = @backend;
> >         }
> 
> +         location @backend {
> +             root           /data/apache/docroot;
> +             fastcgi_pass   unix:/tmp/php.sock;
> +             fastcgi_index  index.php;
> +             fastcgi_param  SCRIPT_FILENAME /data/apache/docroot$fastcgi_script_name;
> +             include        fastcgi_params;
> +         }
> 
> >         error_page   500 502 503 504  /50x.html;
> >         location = /50x.html {
> >             root   html;
> >         }
> 
> >         location ~ \.php$ {
> >             root           /data/apache/docroot;
> >             fastcgi_pass   unix:/tmp/php.sock;
> >             fastcgi_index  index.php;
> >             fastcgi_param  SCRIPT_FILENAME /data/apache/docroot$fastcgi_script_name;
> >             include        fastcgi_params;
> >         }
> 
> >         location ~ /\.ht {
> >             deny  all;
> >         }
> >     }
> 
> 
> 
> 
> -- 
> Best regards,
>  Denis                            mailto:denis at gostats.ru
> 

-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list