Доступ в закрытую часть сайта - ngx_http_auth_basic_module
    Образцовый OnLine магазин 
    4241940 at ukr.net
       
    Mon Feb 23 15:54:28 MSK 2009
    
    
  
  Добрый день всем!
  Подскажие пожалуйста, никак не могу понять как правильно написать
  конфиг для доступа в закрытую часть сайта.
  Вот представленный конфиг дает доступ в  /admin/ по паролю или по IP - но, дело
  в том , что теперь в @backend отправляются и скрипты и картинки и
  все остальное... наверное это не правильно.
  У меня нет отдельного бекенда - только фронтэнд со NGINX
  Спасибо.
  
  Кусок конфига ниже:
  
  
       location / {
            root  /home/egor/html/site.com;
            index index.php;
            error_page 404   /404.html;
        }
        
         error_page  503             /503.html;
         error_page 403 500 502 504  /;
      location ~ /admin/ {
              satisfy  any;
              allow  192.168.1.1;
              deny   all;       
                
              auth_basic            "Warning! Closed area!";
              auth_basic_user_file  /home/egor/pass;
              error_page 404 = @backend;
              
            }
      location  ~ /download/ {
  
               deny    all;
               
               }
                           
      location ~ /admin/htmlarea/ {
  
               deny    all;
               
       }
        # pass the PHP scripts to FastCGI server
        location ~ \.php$ {
             fastcgi_pass   unix:/tmp/php.sock;
             fastcgi_index  index.php;
             fastcgi_param  SCRIPT_FILENAME  /home/egor/html/site.com$fastcgi_script_name;
             fastcgi_param  QUERY_STRING     $query_string;
             fastcgi_param  REQUEST_METHOD   $request_method;
             fastcgi_param  CONTENT_TYPE     $content_type;
             fastcgi_param  CONTENT_LENGTH   $content_length;
             fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
             fastcgi_param  REMOTE_ADDR      $remote_addr;
             
             fastcgi_param  DOCUMENT_ROOT   "/home/egor/html/site.com/";
        }
        
        location @backend {
             root           /home/egor/html/site.com;
             fastcgi_pass   unix:/tmp/php.sock;
             fastcgi_index  index.php;
             fastcgi_param  SCRIPT_FILENAME  /home/egor/html/site.com$fastcgi_script_name;
             fastcgi_param  QUERY_STRING     $query_string;
             fastcgi_param  REQUEST_METHOD   $request_method;
             fastcgi_param  CONTENT_TYPE     $content_type;
             fastcgi_param  CONTENT_LENGTH   $content_length;
             fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
             fastcgi_param  REMOTE_ADDR      $remote_addr;
             include        fastcgi_params;
         }
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    
    
More information about the nginx-ru
mailing list