Apache NIFI 请求包含无效主机 header

Apache NIFI The request contained an invalid host header

我正在尝试 运行 在我的 Rancher 服务器的 docker 上使用 Apache NIFI。 Rancher 是 运行ning 正确的,因为我有其他服务 运行ning。它安装在 Debian 机器上。

我正在尝试测试官方 Apache Nifi 容器。由于 rancher 的默认端口是 8080,我试图 运行 它在另一个端口上。我正在尝试 运行 文档中引用的第一个命令:

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

这给了我标题中提到的错误:

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

我已经尝试在 ubuntu 笔记本电脑上 运行 它是新安装的 docker 并且启动没有问题。

如果我使用 docker exec -it nifi bash 进入 docker 命令行,我发现我没有 vi、nano 也没有任何编辑 nifi 配置文件的方法,我应该在其中更改该信息。

我尝试直接从 rancher 界面创建它,但它在启动容器时会停留很长时间。

我做错了什么?

最终 Rancher 通过 Web itnerface 在漫长的等待后成功启动了容器并且它工作了。

我仍然不知道为什么在命令行上它不起作用,但现在它是次要的。

Apache NiFi 1.6.0 是 just released (April 8, 2018) 并且 Docker 图像应该会在接下来的几天内更新以引用该版本。在 1.6.0 中,主机 header 处理放宽了 user-friendly:

  • NIFI-4761 主机 header 不会在不安全的实例上被阻止(即,除非您配置了 TLS,否则您不会再看到此消息)
  • NIFI-4761nifi.properties (nifi.web.proxy.host) 中添加了一个新的 属性 以允许列出可接受的主机名,而不是 nifi.web.http(s).host
  • NIFI-4788 Docker 文件已更新,以通过 NIFI_WEB_PROXY_HOST='someotherhost.com'
  • 等参数允许此可接受的列表

我不熟悉 Rancher,但我认为容器会安装一些文本编辑器。