Nginx HTTPS
生产站点示例:ai.bucssa.org
配置文件:/etc/nginx/sites-available/ai.bucssa.org
核心配置说明
| 指令 | 作用 |
|---|---|
proxy_pass http://127.0.0.1:3002 | 转发至 Open WebUI |
proxy_http_version 1.1 + Upgrade / Connection | WebSocket / SSE |
proxy_buffering off | 流式输出必需,否则响应可能被缓冲成块 |
proxy_read_timeout 1800s | 长回答不中断 |
client_max_body_size 100M | 上传上限 |
首次签发证书
sudo certbot --nginx -d ai.bucssa.org
Certbot 会修改 server 块并加入 listen 443 ssl 等行。
日常维护
sudo nginx -t && sudo systemctl reload nginx
sudo certbot renew --dry-run # 测试自动续期
仅 HTTP 调试(不推荐生产)
可临时 proxy_pass 到 127.0.0.1:3002,但不要长期暴露无 TLS 的聊天流量。
LiteLLM 为何不经过 Nginx
当前 LiteLLM 只监听 127.0.0.1:4001,不对公网开放。Open WebUI 在服务器本机或 Docker 网络内访问即可。
若未来需要对外提供 API,应单独加 server 块、鉴权与限流,并评估安全影响。
故障:流式乱码或一次性输出
检查是否被改回 proxy_buffering on 或前有 CDN 缓冲。CSSA GPT 的 server 块应保持 proxy_buffering off。