免修改不影响更新!自定义OpenWebUI图标与删除网站名中的(Open WebUI)

RT,众所周知OpenWebUI中的favicon无法修改,且会在你自定义的网站名后添加一个"(Open WebUI)"。

想要修改和删除这两个逻辑最简单的办法就是直接修改OpenWebUI代码,但这个操作又会导致无法直接更新最新版本的OpenWebUI。

所以我稍微研究了下如何在不修改代码的情况下实现替换,不影响便捷更新Open WebUI

一、Favicon与Icon的替换

这两者的替换可以说是最简单的替换方法

我本人的OpenWebUI是OpenWebUI的Docker通过NPM (Nginx Proxy Manager)反代出去

理论上所有的Nginx的反代都适用于本篇教程

所以直接利用NPM的重定向功能将图片地址反代为其他链接

在NPM站点高级设置添加以下配置

# Favicon
location ~* ^/favicon/(.*\.(?:ico|png|svg))$ {
    proxy_pass https://你自己的网站域名/favicon/$1;
    proxy_set_header Host 你自己的网站域名;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

# 网站Icon
location = /static/favicon.png {
    proxy_pass https://你自己的网站域名/static/favicon.png;
    proxy_set_header Host 你自己的网站域名;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

注意,OpenWebUI引用的favicon有以下文件,请确保这些文件在你的网站下的/favicon/目录下有这些文件名

/favicon-96x96.png
/favicon.svg
/favicon.ico
/apple-touch-icon.png

同时/static/目录下放好favicon.png文件。

二、去除网站title中的(Open WebUI)

Open WebUI的逻辑是通过后端接口/api/config来获取name字段
这里我们将OpenWebUI的WEBUI_NAME环境变量设置为空
这样OpenWebUI的代码逻辑判断到标题不为默认后,后端接口会返回站点名为 (OpenWebUI)
此时我们在NPM站点高级设置添加以下代码,以实现修改后端返回的json内容:

proxy_set_header Accept-Encoding "";
sub_filter_once off;
sub_filter_types application/json;
sub_filter '"name":" (Open WebUI)"' '"name":"你想要的网站标题"'; 
24 个赞

太棒啦,

感谢分享

感谢分享

太强了!

感谢分享

感谢分享~~

感谢分享,最近有空试试看 :tieba_003:

大佬们,有没有caddy的配置

youdomain.com {
    reverse_proxy localhost:3000
    
    @favicon path /favicon*
    handle @favicon {
       root /var/www/  # 替换为你的 favicon.ico 文件所在的目录
       file_server
   }
   
}  

替换标题要transformations模块解决,你问下ai怎么搞吧

nginx配置了这修改标题的参数,咋不生效

赞楼主!

感谢分享

去除网站title这个我拷贝过去好像不生效哇

感谢佬友分享