|
1
4
据我所知,HAProxy在后端不支持HTTP/2。他们只是 recently announced front end support . (2019年1月18日编辑-自v1.9中添加以来- https://www.haproxy.com/blog/haproxy-1-9-has-arrived/ ). 即使没有后端HTTP/2支持 是 可以在HTTPS上终止前端,然后在TCP上转发到后端(无HTTPS),并且 也许 可以使用HTTPS的SNI部分执行您想要的可选路由(顺便说一句,这是完全未经测试的):
这将允许您的后端在端口8081上使用HTTP/2,但不使用HTTPS(端口8443),甚至可以在1.8之前的HAProxy上使用(添加了前端HTTP/2支持)。然而,这意味着您的Tomcat需要在没有SSL的情况下进行设置。 HAProxy也不建议使用SNI主机进行路由,如中所述 this answer 在 mailing thread it refers to . 此外,SNI支持并不是通用的(尽管从实际角度来看,它是通用的,除非它支持像XP上的IE8这样的老浏览器)。 你应该问自己的另一个问题是 if you really need HTTP/2 in the backend or if just supporting this at the HAProxy level is enough ? |
|
|
2
0
我已经在BarryPollard的前一篇文章的基础上完成了一个完整的h2管道,并做了一些修改,现在已经可以在dev中使用了。需要进行一些进一步的测试,以扫清生产道路。但至少是它的工作。 浏览器不支持h2明文(h2c),因为谷歌希望每个人都使用ssl,但它在2个httpd服务器之间运行良好(使用apache进行测试,但不使用nginx或tomcat或任何其他httpd)。
以下是我从backend access\u日志中看到的内容: 1.1.1.3--[2019年1月17日:10:57:49-0500]“GET/HTTP/2.0”403 3985“-”Mozilla/5.0(Windows NT 6.1;Win64;x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/71.0.3578.98 Safari/537.36” |