Hi, Just to make sure, if we need some changes on Apache APISIX?
If yes, could we take a look at this PR first[1]? if no, what should we do on Dashboard? [1] https://github.com/apache/apisix-dashboard/pull/1603 Best Regards! @ Zhiyuan Ju <https://github.com/juzhiyuan> Chao Zhang <zchao1...@gmail.com> 于2021年3月19日周五 下午7:44写道: > Yep, then the proposal from Yuan Sheng can be concluded to the way to check > wether “Preserve Client Host”. > > Chao Zhang > https://github.com/tokers > > On March 19, 2021 at 7:20:14 PM, Zexuan Luo (spacewan...@apache.org) > wrote: > > I think the first type is not necessarily as we already have dns discovery. > > We can use: > > ``` > { > "upstream_host": "httpbin.org", > "type":"roundrobin", > "service_name": "httpbin.org" > ... > } > ``` > > YuanSheng Wang <membp...@apache.org> 于2021年3月19日周五 下午6:55写道: > > > > I think we can make the `upstream.node` and `upstream.type` optional. > > We can support those three ways: > > > > ```1 > > { > > "upstream_host": "httpbin.org" # send request to `httpbin.org` with > > same host name > > } > > ``` > > > > or > > > > > > ```2 > > { > > "upstream_host": "httpbin.org", > > "type":"roundrobin", > > "nodes": {"foo.com:80": 100}, # send request to `foo.com` with host > > name `httpbin.org` > > } > > ``` > > > > or > > > > ```3 > > { > > "type":"roundrobin", > > "nodes": {"foo.com:80": 100}, # send request to `foo.com` with current > > request host > > } > > ``` > > > > What do you think? > > > > > > On Thu, Mar 18, 2021 at 1:07 PM Zhiyuan Ju <juzhiy...@apache.org> wrote: > > > > > And we need a plan to do some changes on APISIX IMO, anyone would like > to > > > take this issue? > > > > > > Zhiyuan Ju <juzhiy...@apache.org>于2021年3月18日 周四下午1:06写道: > > > > > > > Yep > > > > > > > > Chao Zhang <zchao1...@gmail.com>于2021年3月18日 周四下午1:04写道: > > > > > > > >> I think the point that put forward by Ju is same with what I > proposed :) > > > >> > > > >> Chao Zhang > > > >> https://github.com/tokers > > > >> > > > >> On March 18, 2021 at 11:55:14 AM, Ming Wen (wenm...@apache.org) > wrote: > > > >> > > > >> chao zhang's idea is good for me. > > > >> what do you think? > > > >> > > > >> Thanks, > > > >> Ming Wen, Apache APISIX PMC Chair > > > >> Twitter: _WenMing > > > >> > > > >> > > > >> Zhiyuan Ju <juzhiy...@apache.org> 于2021年3月18日周四 上午11:49写道: > > > >> > > > >> > Any conclusion and plan here? > > > >> > > > > >> > There has 1 related PR[1]. > > > >> > > > > >> > [1] https://github.com/apache/apisix-dashboard/pull/1603 > > > >> > > > > >> > Best Regards! > > > >> > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > > >> > > > > >> > Zhiyuan Ju <juzhiy...@apache.org> 于2021年3月17日周三 下午11:22写道: > > > >> > > > > >> > > yep, after going through Tyk & Kong, I would agree to use > > > >> `preserve_host` > > > >> > > to replace the current 3 opinions. > > > >> > > > > > >> > > Best Regards! > > > >> > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > > > >> > > > > > >> > > Ming Wen <wenm...@apache.org> 于2021年3月17日周三 下午5:44写道: > > > >> > > > > > >> > >> nice! > > > >> > >> +1 > > > >> > >> > > > >> > >> Chao Zhang <zchao1...@gmail.com>于2021年3月17日 周三下午3:12写道: > > > >> > >> > > > >> > >> > Why not just use one option, "Preserve Client Host”, by > default > > > >> it’s > > > >> > >> > closed, which means the Host header will be rewrite to the > > > Upstream > > > >> > >> host; > > > >> > >> > When it’s opened, the client host will inherited > > > >> > >> > when proxying to upstream. > > > >> > >> > > > > >> > >> > Chao Zhang > > > >> > >> > https://github.com/tokers > > > >> > >> > > > > >> > >> > On March 17, 2021 at 2:49:50 PM, Ming Wen ( > wenm...@apache.org) > > > > >> wrote: > > > >> > >> > > > > >> > >> > I think there should be only two options: preserve and use > > > upstream > > > >> > >> host, > > > >> > >> > the default is the latter > > > >> > >> > > > > >> > >> > JunXu Chen <chenju...@apache.org>于2021年3月17日 周三下午1:46写道: > > > >> > >> > > > > >> > >> > > Hi, Community, > > > >> > >> > > > > > >> > >> > > Currently we use `pass_host` to mark how to process the > > > upstream > > > >> > >> > request’s > > > >> > >> > > Host header. > > > >> > >> > > > > > >> > >> > > It can be one of [`pass`, `node`, `rewrite`], the default > > > option > > > >> is > > > >> > >> > `pass`. > > > >> > >> > > pass: Pass the client's host transparently to the upstream; > > > >> > >> > > node: Use the host configured in the node of upstream; > > > >> > >> > > rewrite: Use the value of the configuration upstream_host. > > > >> > >> > > > > > >> > >> > > Referring to nginx(proxy_pass), tyk and kong, we found that > > > their > > > >> > >> default > > > >> > >> > > behavior is not to preserve the client's request Host, but > to > > > set > > > >> > the > > > >> > >> > > upstream request’s Host header to the hostname specified in > the > > > >> > >> > > upstream(service) by default. > > > >> > >> > > > > > >> > >> > > issues: > > > >> > >> > > > > > >> > >> > > 1. `pass_host` is not easy to understand, I think we could > use > > > >> > >> > > `preserve_host` or `preserve_host_header` instead. > > > >> > >> > > > > > >> > >> > > 2. We should also be the same behavior as nginx, tyk and > kong, > > > >> not > > > >> > >> > preserve > > > >> > >> > > the client's request Host by default if the hostname has > been > > > >> > >> specified > > > >> > >> > in > > > >> > >> > > the upstream. > > > >> > >> > > > > > >> > >> > > What is your opinion? Thanks! > > > >> > >> > > > > > >> > >> > -- > > > >> > >> > Thanks, > > > >> > >> > Ming Wen, Apache APISIX PMC Chair > > > >> > >> > Twitter: _WenMing > > > >> > >> > > > > >> > >> -- > > > >> > >> Thanks, > > > >> > >> Ming Wen, Apache APISIX PMC Chair > > > >> > >> Twitter: _WenMing > > > >> > >> > > > >> > > > > > >> > > > > >> > > > > -- > > > > 来自 琚致远 > > > > > > > -- > > > 来自 琚致远 > > > > > > > > > -- > > > > *MembPhis* > > My GitHub: https://github.com/membphis > > Apache APISIX: https://github.com/apache/apisix >