解决 Open WebUI 网络搜索错误:`NameResolutionError`
解决 Open WebUI 网络搜索错误:NameResolutionError
问题描述
在使用 Open WebUI 进行网络搜索时,可能会遇到类似于以下错误:
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='www.googleapis.com', port=443): Max retries exceeded with url: /customsearch/v1?cx=***&q=%E5%A6%82%E4%BD%95%E5%AD%A6%E8%8B%B1%E8%AF%AD&key=***&num=3&start=1 (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x00000249D6000CD0>: Failed to resolve 'www.googleapis.com' ([Errno 11001] getaddrinfo failed)"))
这个错误通常表明 Open WebUI 无法解析 域名,导致无法连接到 Google Custom Search API。 这可能是由于SSL证书校验或网络连接问题引起的。
解决方案概述
该问题主要有两个解决方案:
- 取消 Open WebUI 中的 SSL 证书校验: 这是最简单的解决方法,适用于快速解决问题。
- 配置域名证书(针对服务器部署): 如果将 Open WebUI 部署到服务器上,建议配置一个域名证书到 Nginx,以提高安全性。
详细步骤
1. 取消 Open WebUI 中的 SSL 证书校验
按照以下步骤操作:
- 打开 Open WebUI 界面。
- 导航到设置/配置页面。 (具体位置可能因版本而异,通常在主界面或侧边栏的“设置”、“配置”或类似的选项中)
- 找到 “SSL 证书校验” 或类似的选项。 (从截图来看,该选项位于主界面)
- 取消勾选 “SSL 证书校验” 选项。
-
保存设置。 (通常会有“保存”、“应用”或类似的按钮)
-
重启 Open WebUI 服务 重新加载配置。
2. 配置域名证书 (针对服务器部署)
如果你的 Open WebUI 部署在服务器上,建议采取以下步骤:
- 获取一个有效的域名证书。 可以通过 证书颁发机构 获取。
- 配置 Nginx (或其他反向代理) 以使用该证书。 这涉及到编辑 Nginx 配置文件,并指定证书和密钥的路径。
- 重启 Nginx 服务。
具体的 Nginx 配置方法因服务器环境而异,请参考相关文档。
注意事项/常见问题
- 临时解决方案: 取消 SSL 证书校验会降低安全性。 建议仅在临时需要时使用,并尽快配置域名证书。
- 网络连接: 确保你的服务器或本地计算机可以访问互联网,并且可以解析 域名。
- API 密钥: 确保你输入的 Google Custom Search API 密钥是有效的。
- 服务器防火墙: 检查你的服务器防火墙设置,确保允许与域名的通信。
结论
通过取消 Open WebUI 中的 SSL 证书校验或配置域名证书,你应该能够解决 NameResolutionError
错误,并恢复网络搜索功能。 根据你的部署环境和安全需求,选择合适的解决方案。