版本: 6.8-8.9
简而言之,当Elasticsearch尝试连接到未配置为处理HTTP请求的端口时,会出现此错误。这可能是由于配置设置不正确或网络问题造成的。要解决此问题,您可以检查Elasticsearch配置文件(elasticsearch.yml)以确保指定了正确的端口。此外,验证您的网络设置是否允许指定端口上的HTTP流量。如果您正在运行防火墙,确保它没有阻止HTTP端口。最后,确保没有其他服务使用相同的端口。
日志上下文 #
日志"这不是 HTTP 端口"的类名是 TcpTransport.java。 我们从Elasticsearch源代码中提取了以下内容,供寻求深入上下文的用户参考:
} private static int readHeaderBuffer(BytesReference headerBuffer) throws IOException {
if (headerBuffer.get(0) != 'E' || headerBuffer.get(1) != 'S') {
if (appearsToBeHTTPRequest(headerBuffer)) {
throw new HttpRequestOnTransportException("This is not an HTTP port");
} if (appearsToBeHTTPResponse(headerBuffer)) {
throw new StreamCorruptedException(
"received HTTP response on transport port; ensure that transport port (not "





