Apache NiFi - 请求包含无效的主机头

问题描述 投票:0回答:2

我正在我的工作场所使用Docker运行Apache NiFi实例并使用代理。我把官方容器拉下来,旋转容器并将其设置为8081而不是8080,因为工作代理设置为8080。

但是,当我尝试使用http://localhost:8081/nifi通过我的开发机器上的浏览器访问NiFi时,我出现以下错误

System Error

The request contained an invalid host header [localhost:8081] in the request [/nifi]. Check for request manipulation or third-party intercept.

我在网上发现了几个帖子提到了nifi.properties文件,但是我对Docker的旋转图像并不熟悉。

如果有人能提供一些非常好的指导或解决方案。非常感谢。

apache-nifi
2个回答
3
投票

如果您不想直接修改nifi.properties文件,可以使用-e标志在Docker命令期间将自定义变量传递给应用程序。在你的情况下,Docker知道端口8081应该映射到8080,但是NiFi不是,而且detects a mismatch on the incoming request host header。要通过此操作,请尝试使用如下命令。

docker run --name nifi \
-p 8081:8081 \
-d \
-e NIFI_WEB_HTTP_PORT='8081'
apache/nifi:latest

1
投票

在我的情况下,我只是将nifi.web.http.host属性指定给主机IP,它可以正常工作。

文件nifi.properties

# web properties #
nifi.web.war.directory=./lib
nifi.web.http.host=192.168.0.69
nifi.web.http.port=8080

有关它的更多信息,我直接在我的主机中使用二进制包。我认为主机名与IP不匹配所以nifi报道了System Error

对于docker的使用,我会在以后找到更多。

© www.soinside.com 2019 - 2024. All rights reserved.