未与HTTP OPTIONS请求一起发送授权标头.我只想在请求为OPTIONS时禁用此身份验证,而将其保留用于其他请求.这是我目前拥有的相关配置代码.似乎看不出为什么它不起作用.我总是在OPTIONS请求中收到401未经授权的错误.
location ~ /foo/bar
{
if ($request_method = OPTIONS) {
set $auth_basic "off";
}
if ($request_method != OPTIONS)
{
set $auth_basic "Resctricted";
set $auth_basic_user_file /var/www/.htpasswd;
}
auth_basic $auth_basic;
auth_basic_user_file $auth_basic_user_file;
}
最佳答案
看起来是旧帖子,但找到了以下解决方案:
将以下配置放入“位置”中,然后从服务器中删除所有auth_basic.这会起作用
location / {
# Your node proxy configuration for example #
# Make options requests work #
limit_except OPTIONS {
auth_basic "Restricted access zone";
auth_basic_user_file /etc/nginx/pass/protected;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。