chatgpt-web icon indicating copy to clipboard operation
chatgpt-web copied to clipboard

使用 nginx 配置 octet-stream (打字特效)无法实现

Open JuneDan opened this issue 1 year ago • 3 comments

在issues很多人提出的解决方法是 default_type octet-stream; proxy_buffering off; chunked_transfer_encoding on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 这个配置是可以的,但是要重启nginx,重启这个不只是nginx-t + nginx -s reload这么简单,要进去进程里面把nginx的进程杀死再重启,就可以生效了

JuneDan avatar Mar 08 '23 08:03 JuneDan

       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "Upgrade";

我的解决办法增加这个配置

systemctl restart nginx 解决了,核心原因是nginx默认没有开websockets

vulgatecnn avatar Mar 09 '23 08:03 vulgatecnn

无法实现打字机效果有以下两种可能 如果是你的前端,并且打包部署了,那么相当于静态页面,则需要将api的请求通过ng转发到后端的api接口,如下配置即可 location /api { rewrite ^/api/?(.*)$ /$1 break; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Connection ""; proxy_http_version 1.1; proxy_pass http://127.0.0.1:3002/; }

如果你用的国内服务器,用了另外一台梯子服务器搭了代理,通过ng代理走的openai的api,那么代理的ng也要配置,如下是配置参考 location /openai/ { default_type octet-stream; proxy_buffering off; chunked_transfer_encoding on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 120; proxy_pass https://api.openai.com/; proxy_set_header Host api.openai.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_http_version 1.1; }

rhymed-l avatar Mar 10 '23 08:03 rhymed-l

我是用Docker compose架构出来的,以上答案不知道怎么配置

ludejun-666 avatar Mar 17 '23 10:03 ludejun-666

       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "Upgrade";

我的解决办法增加这个配置

systemctl restart nginx 解决了,核心原因是nginx默认没有开websockets

worked for me

renqi1996 avatar Mar 27 '23 09:03 renqi1996

proxy_buffering off; 这一句是关键

geegku avatar Nov 22 '23 06:11 geegku