Доступ в закрытую часть сайта - 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