Re: Доступ в закрытую часть сайта - ngx_http_auth_basic_module

Egorov 4241940 at ukr.net
Tue Feb 24 00:32:52 MSK 2009



Вот в таком виде картинки отдаются нормально , а вот скрипты не
выполняются. Чего-то не хватает...



        location / {

            root   /home/egor/html/site.com;
            index  index.php index.html index.htm;
            error_page 404 = /index.php;
        }

        location /admin/ {
            root   /home/egor/html/site.com;
            auth_basic            "closed site";
            auth_basic_user_file  /home/egor/pass;
        }


ОOм>   Подскажие пожалуйста, никак не могу понять как правильно написать
ОOм>   конфиг для доступа в закрытую часть сайта.

ОOм>   Вот представленный конфиг дает доступ в  /admin/ по паролю или по IP - но, дело
ОOм>   в том , что теперь в @backend отправляются и скрипты и картинки и
ОOм>   все остальное... наверное это не правильно.

ОOм>   У меня нет отдельного бекенда - только фронтэнд со NGINX

ОOм>   Спасибо.
ОOм>   
ОOм>   Кусок конфига ниже:

ОOм>   

ОOм>   
ОOм>        location / {
ОOм>             root  /home/egor/html/site.com;
ОOм>             index index.php;

ОOм>             error_page 404   /404.html;

ОOм>         }
ОOм>         


ОOм>          error_page  503             /503.html;
ОOм>          error_page 403 500 502 504  /;



ОOм>       location ~ /admin/ {

ОOм>               satisfy  any;

ОOм>               allow  192.168.1.1;
ОOм>               deny   all;       
ОOм>                 
ОOм>               auth_basic            "Warning! Closed area!";
ОOм>               auth_basic_user_file  /home/egor/pass;

ОOм>               error_page 404 = @backend;
ОOм>               
ОOм>             }


ОOм>       location  ~ /download/ {
ОOм>   
ОOм>                deny    all;
ОOм>                
ОOм>                }
ОOм>                            

ОOм>       location ~ /admin/htmlarea/ {
ОOм>   
ОOм>                deny    all;
ОOм>                
ОOм>        }



ОOм>         # pass the PHP scripts to FastCGI server
ОOм>         location ~ \.php$ {

ОOм>              fastcgi_pass   unix:/tmp/php.sock;
ОOм>              fastcgi_index  index.php;

ОOм>              fastcgi_param  SCRIPT_FILENAME 
ОOм> /home/egor/html/site.com$fastcgi_script_name;
ОOм>              fastcgi_param  QUERY_STRING     $query_string;
ОOм>              fastcgi_param  REQUEST_METHOD   $request_method;
ОOм>              fastcgi_param  CONTENT_TYPE     $content_type;
ОOм>              fastcgi_param  CONTENT_LENGTH   $content_length;

ОOм>              fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
ОOм>              fastcgi_param  REMOTE_ADDR      $remote_addr;
ОOм>              
ОOм>              fastcgi_param  DOCUMENT_ROOT   "/home/egor/html/site.com/";
ОOм>         }

ОOм>         
ОOм>         location @backend {

ОOм>              root           /home/egor/html/site.com;
ОOм>              fastcgi_pass   unix:/tmp/php.sock;
ОOм>              fastcgi_index  index.php;
ОOм>              fastcgi_param  SCRIPT_FILENAME 
ОOм> /home/egor/html/site.com$fastcgi_script_name;
ОOм>              fastcgi_param  QUERY_STRING     $query_string;
ОOм>              fastcgi_param  REQUEST_METHOD   $request_method;
ОOм>              fastcgi_param  CONTENT_TYPE     $content_type;
ОOм>              fastcgi_param  CONTENT_LENGTH   $content_length;

ОOм>              fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
ОOм>              fastcgi_param  REMOTE_ADDR      $remote_addr;

ОOм>              include        fastcgi_params;

ОOм>          }

ОOм>         # deny access to .htaccess files, if Apache's document root
ОOм>         # concurs with nginx's one
ОOм>         #
ОOм>         location ~ /\.ht {
ОOм>             deny  all;
ОOм>         }






More information about the nginx-ru mailing list