在使用Stable Diffusion时,经常需要切换VPN进行环境切换,科学上网。每次切换后Stable Diffusion也都会出现 无法使用的问题,笨办法就是每次重新启动……
这种情况主要是Stable Diffusion Webui 采用的是开源的 Gradio 框架,其中部分请求使用了websockets 链接进行服务端交互,每次网络环境切换 websockets 就会中断,所以都会出现此问题。解决办法也是相当的简单。官方提供了命令行参数 --no-gradio-queue 进行配置,它可以关闭websockets 模式。
Disables gradio queue; causes the webpage to use http requests instead of websockets; was the defau
lt in earlier versions.
在webui-user 文件中设置此参数即可。
set COMMANDLINE_ARGS = --no-gradio-queue
此问题也同样适应于解决通过Web服务器进行前端反向代理时出现的websockets 链接不通的问题。
在使用Nginx 等Web服务器进行代理时,正常反向代理配置中未包括websockets链接支持,一般在nginx配置文件中会增加如下配置:文章来源:https://www.toymoban.com/news/detail-846322.html
location / {
root html;
index index.html index.htm;
proxy_pass http://127.0.0.1:7860;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
通过在 proxy_set_header 参数配置中升级协议支持 websockets代理,但使用--no-gradio-queue参数可以将Stable Diffusion 转为全http支持,反向代理时可以不再进行websockets相关配置。文章来源地址https://www.toymoban.com/news/detail-846322.html
到了这里,关于Stable Diffusion 开启后切换VPN无法使用问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!