必须通过反向代理终止https并转发解密流量至dify后端:宝塔面板可一键申请let’s encrypt证书并强制https;内网场景可用openssl生成自签名证书+手动配置nginx tls;最后务必更新dify后台base url为https地址,避免混合内容导致白屏。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在Dify私有化部署中启用SSL加密协议,确保用户输入、API密钥、模型响应等敏感数据在内外部传输过程中不被窃听或篡改,必须通过反向代理层统一终止HTTPS连接,并将解密后流量安全转发至Dify后端服务。
使用宝塔面板一键配置Let’s Encrypt证书
这是面向已有备案域名且服务器具备公网IP的最快路径,无需手动操作Nginx配置文件。
打开宝塔面板 → 左侧【网站】→ 找到已绑定Dify容器的域名站点(如 dify.example.com)→ 点击【设置】。
进入【SSL】选项卡 → 选择【Let’s Encrypt】→ 勾选该域名及www子域名(若DNS已同步解析)→ 确保验证方式为【HTTP验证】而非DNS验证。
【申请前务必确认:该域名A记录已100%生效并指向当前服务器公网IP,可通过ping命令或dig验证,否则证书申请必然失败】。
点击【申请】→ 成功后自动写入Nginx配置并重载 → 勾选【强制HTTPS】→ 点击【保存】。
手动配置Nginx反向代理启用HTTPS
适用于无公网域名、内网部署或需精细控制加密策略的场景,比如企业内网Dify平台对接OA系统。
方法一:使用自签名证书快速测试
执行 openssl genrsa -out /etc/nginx/ssl/dify.key 2048 生成私钥。
执行 openssl req -new -key /etc/nginx/ssl/dify.key -out /etc/nginx/ssl/dify.csr,按提示填写国家、组织、Common Name(必须填你的访问域名,如intranet.dify.local)。
Dify 3.9.2更新重点增强系统安全性,引入 Chainguard 安全基础镜像并同步社区版 CVE 修复,同时优化 OpenSearch 向量存储兼容性、插件参数传输机制及 Helm 部署配置。新增工作流模型节点缓存能力,可减少重复凭证查询,显著提升复杂工作流初始化速度,为企业级 AI 应用提供更稳定、高效的运行体验。
执行 openssl x509 -req -days 3650 -in /etc/nginx/ssl/dify.csr -signkey /etc/nginx/ssl/dify.key -out /etc/nginx/ssl/dify.crt 签发证书。
方法二:配置Nginx server块启用TLS
编辑 /www/server/nginx/conf/vhost/dify.conf,在server段中写入:
listen 443 ssl; server_name dify.example.com; ssl_certificate /etc/nginx/ssl/dify.crt; ssl_certificate_key /etc/nginx/ssl/dify.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512;
location / { proxy_pass http://localhost:8088; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
执行 nginx -t 验证语法 → systemctl reload nginx 重载配置。
更新Dify后台Base URL为HTTPS地址
这一步遗漏会导致前端资源加载混合内容(Mixed Content),浏览器拦截CSS/JS/图片,登录页白屏或功能异常。
第一步:用管理员账号登录 Dify 后台(https://你的域名)。
第二步:进入【Settings】→【Domain】→ 将 Base URL 字段从 http://dify.example.com 改为 https://dify.example.com。
第三步:点击【Save】保存,系统会自动刷新缓存并重定向所有内部链接使用HTTPS协议。










