最近想要通过 Nginx 把家里的 QBittorrent 暴露出来用于公网访问
但代理过后总是出现 401 错误,导致不能正常使用,经过搜索网友们遇到的情况,发现还是反向代理的配置上出了问题.
1 2 3 4 5 6
| location / { proxy_pass http://192.168.1.1:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
|
正确的配置文件view raw1 2 3 4 5 6 7 8 9 10
| location / { proxy_pass http://192.168.1.1:8080/; proxy_http_version 1.1; 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-Host $http_host; proxy_set_header X-Forwarded-Proto $scheme; http2_push_preload on; }
|
推测这其中重要的是 X-Forwarded-Host X-Forwarded-Proto 两个头部字段,毕竟 QB 中也有相应的控制功能:

因此推测是 QB 需要根据 http 的头部字段做一些判断,如果需要获取的字段信息不存在,可能就会导致 http 验证无法通过,因而返回401验证错误.