加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Tomcat竟然有bug,这我能信?

发布时间:2019-06-15 06:46:57 所属栏目:业界 来源:简书
导读:配景先容 为了办理漫衍式链路追踪的题目,我们引入了实现OpenTracing的Jaeger来实现。然后我们为SpringBoot框架写了一个starter以让用户实现近零改革接入全链路。 因为公司有一个封装了SpringBoot的内部框架,然后我们的starter就以最新框架所行使的Spring

发明8.5.31版本的AbstractProcessor类中多了一个parseHost的要领,然后首要理会要领是Host.parse(valueMB);

Tomcat竟然有bug,这我能信?

到这里我们就已经知道了为什么8.5.11版本的tomcat是正常的,首要是由于8.5.11版本的tomcat没有对Host头部举办校验,而在8.5.31版本的tomcat增进了该校验。

我们来看一下tomcat源代码的提交记录:

Tomcat竟然有bug,这我能信?

我们发此刻 2018/4/6增进了对host/port的校验。

根因之根因

那为什么tomcat增进了这个Host的校验呢,并且不应承行使带有下划线的Host呢?现实上这个是有类型的。详细点击这个链接

https://www.ietf.org/rfc/rfc1034.txt

履历教导

好了,到这里我们就知道了,着实对付带有下划线的Host,tomcat是遵循的RFC1-1034的类型的,以是tomcat的处理赏罚是正确的。可是tomcat在处理赏罚某些其他正当的Host的时辰汗青上呈现过bug,可是对付下划线的处理赏罚一向是正确的。

以是,往后nginx在设置upstream的时辰不能行使带有下划线的名称,尚有最亏得location位置上加上proxy_set_header HOST $host

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读