Tomcat竟然有bug,这我能信?
发明8.5.31版本的AbstractProcessor类中多了一个parseHost的要领,然后首要理会要领是Host.parse(valueMB); 到这里我们就已经知道了为什么8.5.11版本的tomcat是正常的,首要是由于8.5.11版本的tomcat没有对Host头部举办校验,而在8.5.31版本的tomcat增进了该校验。 我们来看一下tomcat源代码的提交记录: 我们发此刻 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 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |