Nginx - 密码保护单个目录

时间:2015-09-24 12:55:11

标签: php nginx http-basic-authentication

无论我尝试什么,我似乎无法让Nginx密码保护子目录。

我希望admin目录及其内容受密码保护,但我尝试过的配置都没有显示基本身份验证弹出窗口。

/
  admin/
    index.php
    file.zip
  index.php

我的Nginx配置如下:

/etc/nginx/sites-available/example.com

server {
    listen          80 default_server;
    server_name     subdomain.example.com;

    root            /srv/www/example.com/subdomain/http;
    index           index.php index.html index.htm;

    location ~ \.php$ {
        try_files               $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass            unix:/var/run/php5-fpm.sock;
        fastcgi_index           index.php;
        include                 fastcgi_params;
    }

    location /admin {
        auth_basic              "Restricted Access";
        auth_basic_user_file    /etc/nginx/.htpasswd;

        location ~* \.php$ {
            fastcgi_pass        unix:/var/run/php5-fpm.sock;
            fastcgi_index       index.php;
            include             fastcgi_params;
        }
    }
}

我尝试了各种排列,包括location ^~ /adminlocation ^~ admin/index.php,但似乎没有任何效果。

我错过了一些明显的东西吗?

感谢阅读。

0 个答案:

没有答案