需求:把发布的apps直接使用域名解析后访问。

思路:修改dify默认的80端口,安装nginx代理到dify,域名解析到IP。

在这里插入图片描述

一、修改dify的变量

修改docker/.env环境变量文件,把以下端口从80修改为88
NGINX_PORT=88
EXPOSE_NGINX_PORT=88

二、安装nginx

rpm -ivh nginx-1.26.3-1.el8.ngx.x86_64.rpm

三、修改nginx配置

vi /etc/nginx/conf.d/default.conf
  location / {
    rewrite ^/$ /chatbot/aT8X99baCLObvW6u last;
    proxy_pass http://192.168.113.138:88;
    proxy_set_header X-App-Code “aT8X99baCLObvW6u”;
  }

四、启动服务并测试

#启动dify服务
docker-compose up -d
#启动nginx服务
systemctl start nginx

五、解决流式打印卡顿

可以通过域名访问到发布的apps,但是输出会有卡顿,流式打印变成一段一段的打印
通过修改nginx配置解决,location配置块新增两个指令,完整版如下。

server {
    listen       80;

    location / {
        rewrite ^/$ /chatbot/aT8X99baCLObvW6ulast;
        proxy_pass http://192.168.113.138:88;
        proxy_set_header X-App-Code "aT8X99baCLObvW6u";
        proxy_cache off;
        proxy_buffering off;
    }
}

重启nginx即可。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐