nginx中除列出的用户代理之外的所有用户代理的基本身份验证

nginx中除列出的用户代理之外的所有用户代理的基本身份验证,nginx,Nginx,我已经了解了Apache配置,但我也对nginx感兴趣 在nginx配置中,除了指定的用户代理之外,是否可以要求对所有用户代理进行基本身份验证?经过几个晚上的研究和反复试验,我发现可以结合map指令和auth\u Basic指令的自定义变量创建条件身份验证: map $http_user_agent $authentication { default "Access Restricted"; "~^PayPal IPN" "off"; # ... } server {

我已经了解了Apache配置,但我也对nginx感兴趣


在nginx配置中,除了指定的用户代理之外,是否可以要求对所有用户代理进行基本身份验证?

经过几个晚上的研究和反复试验,我发现可以结合
map
指令和
auth\u Basic
指令的自定义变量创建条件身份验证:

map $http_user_agent $authentication {
    default "Access Restricted";
    "~^PayPal IPN" "off";
    # ...
}

server {
    # ...
    location / {
        auth_basic $authentication;
        auth_basic_user_file /etc/nginx/.htpasswd;
        # ...
    }
}