Web services 如何配置任何web服务器以接受没有主机和绝对请求URI的POST请求?

Web services 如何配置任何web服务器以接受没有主机和绝对请求URI的POST请求?,web-services,webserver,jetty,Web Services,Webserver,Jetty,我有一个客户端,它发送带有绝对请求URI的http请求,并且不定义“主机” Jetty这样的web服务器拒绝POST请求时会说: org.eclipse.jetty.http.BadMessageException:400:无主机 有没有办法将jetty或任何其他web服务器配置为接受没有主机的post请求? 客户端必须发送主机头,才能符合HTTP/1.1 如果在目标中发送绝对URI,则Host头必须与在该绝对URI目标中找到的头相同 请注意,HTTP/1.1规范甚至指出 服务器必须以400(错

我有一个客户端,它发送带有绝对请求URI的http请求,并且不定义“主机”

Jetty这样的web服务器拒绝POST请求时会说:

org.eclipse.jetty.http.BadMessageException:400:无主机

有没有办法将jetty或任何其他web服务器配置为接受没有主机的post请求?

客户端必须发送主机头,才能符合HTTP/1.1

如果在目标中发送绝对URI,则
Host
头必须与在该绝对URI目标中找到的头相同

请注意,HTTP/1.1规范甚至指出

服务器必须以400(错误请求)状态代码响应任何请求 缺少主机头字段的HTTP/1.1请求消息,并发送到任何 包含多个主机标头字段或 具有无效字段值的主机标头字段

这就要求在这种情况下始终以错误400进行响应

如果您使用HTTP/2,那么您可以避免这种情况,因为目标URI和主机头之间的分割是通过
:authority
伪头来解决的


请参见

在Jetty或其他web服务器中是否有任何方法可以绕过此要求?假设仍然接受没有主机的请求?这将违反基本规范。不幸的是,我无法更改发送这些无效请求的客户端代码。是否有运行HTTP/2的jetty或其他Web服务器版本?jetty 9.3+支持HTTP/2