Authentication nginx location指令:身份验证发生在错误的位置块中?
我很困惑 我有一个服务器,它主要是通过ssl运行couchdb(使用nginx代理ssl连接),但也必须提供一些apache服务 基本上,我希望所有没有启动/www的东西都被发送到couchdb后端。如果url确实启动/www,则应将其映射到端口8080上的本地apache服务器 我下面的配置可以正常工作,但在/www路径上也会提示我进行身份验证。与nginx相比,我更习惯于配置Apache,因此我怀疑我对某些东西理解错误,但如果有人能从我的配置(如下)中看出什么是错误的,我将不胜感激 澄清我的使用场景Authentication nginx location指令:身份验证发生在错误的位置块中?,authentication,configuration,proxy,nginx,location,Authentication,Configuration,Proxy,Nginx,Location,我很困惑 我有一个服务器,它主要是通过ssl运行couchdb(使用nginx代理ssl连接),但也必须提供一些apache服务 基本上,我希望所有没有启动/www的东西都被发送到couchdb后端。如果url确实启动/www,则应将其映射到端口8080上的本地apache服务器 我下面的配置可以正常工作,但在/www路径上也会提示我进行身份验证。与nginx相比,我更习惯于配置Apache,因此我怀疑我对某些东西理解错误,但如果有人能从我的配置(如下)中看出什么是错误的,我将不胜感激 澄清我的
server {
listen 443;
ssl on;
# Any url starting /www needs to be mapped to the root
# of the back end application server on 8080
location ^~ /www/ {
proxy_pass http://localhost:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# Everything else has to be sent to the couchdb server running on
# port 5984 and for security, this is protected with auth_basic
# authentication.
location / {
auth_basic "Restricted";
auth_basic_user_file /path-to-passwords;
proxy_pass http://localhost:5984;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Ssl on;
}
}
Maxim对我的回答很有帮助,他提到浏览器访问favicon会触发这种行为,并且配置在其他方面是正确的