如何配置Couchbase管理界面的代理上下文路径以共享域名端口?
Couchbase管理界面反向代理配置方案
要实现将Couchbase管理界面通过http://<hostname>/cb_admin/访问,同时让应用的/ui/和/api/路径共享同一域名端口,只需完成Couchbase自身上下文路径配置和代理服务器配置两步即可。
一、配置Couchbase管理界面的上下文路径
针对Couchbase Server 6.5及以上版本,可通过命令行工具直接设置管理界面的路径前缀:
couchbase-cli setting-web -c <couchbase内部主机>:8091 -u <管理员账号> -p <管理员密码> --set --path-prefix /cb_admin
执行完成后,重启Couchbase服务使配置生效。此操作会让Couchbase管理界面的所有内部资源链接自动带上/cb_admin前缀,避免代理后出现资源加载失败的问题。
二、配置反向代理服务器(以Nginx为例)
在Nginx的配置文件中添加以下server块,实现路径转发:
server { listen 80; server_name <你的域名/主机名>; # 转发Couchbase管理界面请求 location /cb_admin/ { proxy_pass http://<couchbase内部主机>:8091/cb_admin/; # 传递必要的请求头 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # 支持WebSocket(Couchbase监控功能依赖) proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } # 转发应用UI请求 location /ui/ { proxy_pass http://<应用UI服务地址>:<端口>/ui/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } # 转发应用API请求 location /api/ { proxy_pass http://<应用API服务地址>:<端口>/api/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
配置完成后重启Nginx服务,即可通过以下路径访问对应服务:
- Couchbase管理界面:
http://<hostname>/cb_admin/ - 应用UI:
http://<hostname>/ui/ - 应用API:
http://<hostname>/api/
注意事项
- 若使用Couchbase 6.5以下版本,需手动修改Couchbase的配置文件(如
/opt/couchbase/etc/couchbase/static_config),添加path_prefix = /cb_admin后重启服务。 - 确保代理服务器与Couchbase服务之间网络连通,且防火墙开放对应端口。
内容的提问来源于stack exchange,提问作者queeg
相关产品推荐
相关产品推荐

