为什么端口 443 上的 Kafka REST 代理 运行 警告非法字符 0x16?

Why Kafka REST proxy running on port 443 warns about Illegal character 0x16?

我通过设置 listeners=http://0.0.0.0:443 修改了 kafka.rest.properties 的配置。现在执行 sudo bin/kafka-rest-start ./etc/kafka-rest/kafka-rest.properties 我反复收到这个错误

[2017-02-01 07:31:43,727] WARN Illegal character 0x16 in state=START for buffer HeapByteBuffer@19545026[p=1,l=244,c=16384,r=243]={\x16<<<\x03\x03\x00\xEf\x01\x00\x00\xEb\x03\x03X\x91\x8e\xDf:\xDaq...\x01\x04\x02\x03\x03\x03\x01\x03\x02\x02\x03\x02\x01\x02\x02>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} (org.eclipse.jetty.http.HttpParser:1719) [2017-02-01 07:31:43,727] WARN badMessage: 400 Illegal character 0x16 for HttpChannelOverHttp@177884e9{r=0,c=false,a=IDLE,uri=-} (org.eclipse.jetty.http.HttpParser:1344)



我尝试了其他几个端口号,但它只发生在 443 上。

http://0.0.0.0:443

您正在 HTTPS 端口上侦听 HTTP。

我猜你的客户端软件会查看端口并发送 HTTPS。或者 Kafka 可能会查看端口并期待 HTTPS(错误消息看起来像前者)。

或者您在连接 url 协议配置中输入错误。

确保客户端和服务器同意协议。

或者更好的是,不要在 HTTPS 端口上使用 HTTP。那只是令人困惑。