nginx-proxy在很大程度上依赖于Host标头的使用。但是,大多数浏览器不允许您手动设置Host标头。如果尝试尝试,则会收到错误Refused to set unsafe header "Host"
。
那我应该如何从浏览器向nginx-proxy发送请求?
答案 0 :(得分:0)
已解决此问题here。
tl; dr是您只能在具有VIRTUAL_HOST变量的后端拥有一个docker服务,并且该服务必须与前端使用的域相对应。
如果您有多个后端服务,因此有多个VIRTUAL_HOSTS,则需要在前端动态设置HOST标头,以便nginx-proxy知道将请求路由到何处。但是,正如我们现在所知,这是不可能的,因为浏览器不允许您动态设置Host标头。
我的解决方案是将nginx-proxy替换为原始的nginx配置,并依靠URL名称空间进行服务路由,而不是尝试设置Host标头。