配置项作用 #
http.host 配置项指定 HTTP 服务绑定的网络主机地址,决定 Easysearch 在哪些网络接口上监听 HTTP 连接。
是否可选 #
是
默认值 #
[] (空列表,会使用 network.host 的值)
配置项类型 #
静态配置 - 需要重启节点才能生效
配置格式 #
# 绑定到所有接口
http.host:
- 0.0.0.0
# 绑定到特定 IP 地址
http.host:
- 192.168.1.10
# 绑定到多个 IP 地址
http.host:
- 192.168.1.10
- 10.0.0.5
# 绑定到本地回环地址
http.host:
- _local_
# 绑定到站点本地地址
http.host:
- _site_
工作原理 #
HTTP 服务器绑定到配置的主机地址:
┌─────────────────────────────────────────────────────────┐
│ 节点启动 │
└─────────────────────────────────────────────────────────┘
│
▼
┌───────┴────────┐
│ 读取配置 │
http.host 配置
│
▼
┌───────┴────────┐
│ │
指定地址? 未指定
│ │
▼ ▼
绑定指定地址 使用 network.host
│ │
▼ ▼
┌─────┴─────────────────────┴─────┐
│ │
解析地址 绑定到网络接口
│ │
▼ ▼
HTTP 服务启动
优先级顺序 #
http.bind_host (最高优先级)
│
├── 未设置 → http.host
│ │
│ ├── 未设置 → network.bind_host
│ │ │
│ │ └── 未设置 → network.host
│ │
▼ ▼
最终绑定的地址 ←─────┘
推荐设置 #
| 环境 | 推荐配置 | 说明 |
|---|---|---|
| 开发环境 | ["127.0.0.1"] 或 ["_local_"] | 只允许本地访问 |
| 生产环境 | 具体内网 IP | 绑定到内网 IP |
| 多网卡服务器 | 所有需要的 IP | 明确指定每个 IP |
| 容器环境 | ["0.0.0.0"] | 绑定所有接口 |
使用示例 #
开发环境配置:
# 只允许本地访问
http.host:
- 127.0.0.1
# 或使用本地标识符
http.host:
- _local_
生产环境配置:
# 绑定到内网 IP
http.host:
- 192.168.1.10
# 多网卡服务器
http.host:
- 192.168.1.10
- 10.0.0.5
容器环境配置:
# 绑定所有接口(容器内)
http.host:
- 0.0.0.0
配置验证 #
# 查看当前配置
GET /_nodes/settings?filter_path=nodes.*.http.host
# 查看实际绑定的地址
GET /_nodes
# 测试连接
curl http://192.168.1.10:9200
安全建议 #
生产环境最佳实践:
- 避免绑定所有接口
# 不推荐
http.host:
- 0.0.0.0
# 推荐 - 绑定到具体 IP
http.host:
- 192.168.1.10
- 使用内网 IP
http.host:
- 10.0.0.10
- 配合防火墙
# 限制访问来源
firewall-cmd --permanent --add-rich-rule='
rule family="ipv4" source address="10.0.0.0/8"
port protocol="tcp" port="9200" accept
'
常见问题 #
问题 1:无法从远程访问
症状:
- 本地可以访问
- 远程无法连接
可能原因:
- 绑定到了 127.0.0.1
- 防火墙阻止了连接
- 绑定的 IP 不在正确的网卡上
解决方案:
# 确保绑定到正确的网络接口
http.host:
- 192.168.1.10
# 检查网络接口
ip addr show
# 检查防火墙
firewall-cmd --list-all
问题 2:多网卡绑定错误
症状:
- 服务只在一个网卡上监听
解决方案:
# 明确指定所有需要监听的 IP
http.host:
- 192.168.1.10
- 10.0.0.5
相关配置项 #
| 配置项 | 默认值 | 说明 |
|---|---|---|
http.bind_host | 同 http.host | 实际绑定的地址 |
http.publish_host | 同 http.host | 对外发布的地址 |
network.host | - | 全局网络绑定地址 |
http.port | 9200-9300 | HTTP 服务端口 |
注意事项 #
- 静态配置:修改绑定地址需要重启节点
- 安全考虑:生产环境应绑定到具体 IP,避免使用 0.0.0.0
- 优先级:http.bind_host 优先级高于 http.host
- 地址解析:主机名会在启动时解析为 IP 地址
- 回环地址:开发环境可以使用 local 只允许本地访问





