Authentication nginx location指令:身份验证发生在错误的位置块中?

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,因此我怀疑我对某些东西理解错误,但如果有人能从我的配置(如下)中看出什么是错误的,我将不胜感激 澄清我的

我很困惑

我有一个服务器,它主要是通过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会触发这种行为,并且配置在其他方面是正确的