注意
本教程由社区贡献,未获得 Open WebUI 团队支持。它仅作为一个如何根据您的特定用例定制 Open WebUI 的演示。想要贡献?查看贡献教程。
使用 Nginx 配置 HTTPS
确保您的用户与 Open WebUI 之间的安全通信至关重要。HTTPS(超文本传输安全协议)对传输的数据进行加密,保护其免受窃听和篡改。通过将 Nginx 配置为反向代理,您可以无缝地为 Open WebUI 部署添加 HTTPS,从而增强安全性和可信度。
本指南提供了三种设置 HTTPS 的方法:
- 自签名证书:适用于开发和内部使用,使用 Docker。
- Let's Encrypt:适用于需要受信任 SSL 证书的生产环境,使用 Docker。
- Windows + 自签名:简化用于 Windows 上的开发和内部使用,无需 Docker。
选择最适合您部署需求的方法。
- Nginx 代理管理器
- Let's Encrypt
- 自签名
- Windows
Nginx代理管理器
Nginx代理管理器(NPM)允许您轻松管理反向代理,并通过Let's Encrypt提供的有效SSL证书保护您的本地应用程序,例如Open WebUI。 此设置启用了HTTPS访问,这对于许多移动浏览器因其安全性要求而使用语音输入功能是必要的,同时不直接将应用程序的特定端口暴露到互联网上。
前置条件
- 一台运行Docker的家庭服务器和运行中的open-webui容器。
- 一个域名(例如免费的DuckDNS或付费的Namecheap/GoDaddy)。
- 基本的Docker和DNS配置知识。
步骤
-
为Nginx文件创建目录:
mkdir ~/nginx_config
cd ~/nginx_config -
使用Docker设置Nginx代理管理器:
nano docker-compose.yml
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
运行容器:
docker-compose up -d
-
配置DNS和域名:
- 登录到您的域名提供商(例如DuckDNS)并创建一个域名。
- 将域名指向您的代理的本地IP(例如:192.168.0.6)。
- 如果使用DuckDNS,从他们的仪表盘获取一个API令牌。