【发布时间】:2015-02-06 12:05:04
【问题描述】:
我试图让我的管理员控制器通过 auth_basic 身份验证。这就是我的 nginx 配置的样子:
location /index.php {
if ($arg_r ~ admin) {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/mywebsite/.htpasswd;
}
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_pass php;
}
当请求在 arg r 中包含“admin”时,我需要提示身份验证,例如:
- /index.php?r=admin -> 授权
- /index.php?r=admin/anythinghere -> 验证
- /index.php?r=site/index -> 无授权
但不工作,我做错了什么?
【问题讨论】:
标签: nginx basic-authentication