配置项作用 #
http.ui.enabled 配置项控制是否启用 Easysearch 的 Web UI 管理界面访问。当启用时,可以通过 HTTP 访问静态 Web 文件。
是否可选 #
是
默认值 #
true (启用 Web UI)
配置项类型 #
静态配置 - 需要重启节点才能生效
配置格式 #
# 启用 Web UI(默认)
http.ui.enabled: true
# 禁用 Web UI
http.ui.enabled: false
工作原理 #
┌─────────────────────────────────────────────────────────┐
│ Web UI 访问流程 │
└─────────────────────────────────────────────────────────┘
客户端请求
│
│ GET /_ui/
▼
检查 http.ui.enabled
│
├── true → 提供 UI 文件
│ │
│ └── 返回静态资源
│
└── false → 返回 403 Forbidden
"UI access is disabled"
访问路径 #
启用后可通过以下路径访问:
/_ui/- 主界面/_ui/{file}- 具体文件/_ui/assets/{file}- 资源文件
安全特性 #
内置安全保护:
- 路径遍历保护 - 防止访问
_ui目录外的文件 - 目录列表禁用 - 不允许列出目录内容
- 仅限常规文件 - 只能访问文件
- CSP 策略 - 强制内容安全策略
推荐设置 #
| 环境 | 推荐值 | 说明 |
|---|---|---|
| 开发环境 | true | 便于调试和管理 |
| 测试环境 | true | 方便测试 |
| 生产环境 | false | 关闭不必要的访问入口 |
| 高安全环境 | false | 减少攻击面 |
使用示例 #
默认配置:
http.ui.enabled: true
生产环境配置:
# 禁用 Web UI
http.ui.enabled: false
安全建议 #
生产环境最佳实践:
- 禁用 Web UI
http.ui.enabled: false
- 如果必须启用,配合身份认证
http.ui.enabled: true
# 配置身份认证
xpack.security.enabled: true
- 限制访问来源
- 使用防火墙限制访问
- 配置反向代理进行认证
配置验证 #
# 查看当前配置
GET /_nodes/settings?filter_path=nodes.*.http.ui.enabled
# 测试 UI 访问
curl -I http://localhost:9200/_ui/
# 预期响应(启用时):
# HTTP/1.1 200 OK
# 预期响应(禁用时):
# HTTP/1.1 403 Forbidden
常见问题 #
问题 1:UI 访问被拒绝
错误信息:
UI access is disabled
解决方案:
# 检查配置
http.ui.enabled: true
问题 2:UI 文件未找到
检查是否安装了包含 UI 的插件。
注意事项 #
- 静态配置:修改设置需要重启节点
- 安全考虑:生产环境建议禁用
- 路径保护:内置路径遍历保护
- 插件依赖:UI 功能由插件提供
- 独立控制:不影响其他 HTTP 功能
相关配置项 #
| 配置项 | 默认值 | 说明 |
|---|---|---|
http.enabled | true | HTTP 服务总开关 |
http.port | 9200-9300 | HTTP 服务端口 |
完整配置示例 #
# easysearch.yml
# 生产环境配置
http.ui.enabled: false
# 开发环境配置
http.port: 9200
http.ui.enabled: true





