260203-OpenWebUI-在Windows上和RHEL上部署Caddy的步骤+在iPhone上操作的步骤

要在局域网内解决 iPhone 访问 OpenWebUI 的语音/视频权限问题,核心目标是建立一个被 iPhone 信任的 HTTPS 环境。以下是针对 Windows 和 RHEL 两大平台的 Caddy 部署及 iPhone 操作的完整指南。


一、 Windows 平台部署 Caddy

适用于在 Windows PC 上直接开发或运行 OpenWebUI 的场景。

  1. 下载 :从 Caddy GitHub Releases 下载 windows_amd64 的 zip 包,解压得到 caddy.exe。
  2. 存放 :建议存放在 C:\caddy\。
  3. 配置 :在同目录下新建文本文件并重命名为 Caddyfile(无后缀),内容如下:
caddy 复制代码
# 替换为你电脑的局域网 IP (例如 192.168.1.5)
192.168.x.x {
    reverse_proxy localhost:3000
    tls internal
}
  1. 启动:在当前文件夹打开终端(CMD 或 PowerShell),输入:
cmd 复制代码
.\caddy.exe run
  1. 查找证书 :Caddy 会生成根证书,Windows 上通常位于:
    C:\Users\你的用户名\AppData\Roaming\Caddy\pki\authorities\local\root.crt

二、 RHEL 平台部署 Caddy

适用于公司服务器环境。

  1. 安装:
bash 复制代码
sudo dnf install 'dnf-command(copr)'
sudo dnf copr enable @caddy/caddy
sudo dnf install caddy
  1. 配置 :修改 /etc/caddy/Caddyfile:
caddy 复制代码
# 替换为 RHEL 服务器的局域网 IP
192.168.x.x {
    reverse_proxy localhost:3000
    tls internal
}
  1. 放行防火墙:
bash 复制代码
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
  1. 启动 :sudo systemctl enable --now caddy
  2. 查找证书 :RHEL 上根证书位置:
    /var/lib/caddy/.local/share/caddy/pki/authorities/local/root.crt

三、 iPhone 手机端操作步骤

这是开启语音和视频权限最关键的一步,必须严格执行:

1. 传输并安装证书

  • 将上述步骤中找到的 root.crt 文件通过邮件、隔空投送(AirDrop)或网页下载发送到 iPhone。
  • 点击文件,iPhone 会提示"已下载描述文件"。
  • 进入 设置 > 已下载描述文件 ,点击 安装。

2. 开启完全信任 (必做)

  • 进入 设置 > 通用 > 关于本机 > 证书信任设置。
  • 在"针对根证书启用完全信任"列表中,找到 Caddy Local Authority...。
  • 打开其右侧的开关。

3. 访问测试

  • 在 Safari 浏览器中输入 https://192.168.x.x(必须手动输入 https)。
  • 地址栏应出现"灰色或绿色的小锁",不再报安全警告。
  • 此时点击 OpenWebUI 的麦克风或摄像头图标,iOS 即可正常弹出授权窗口。

方案总结对比

操作环节 Windows 平台 RHEL 平台
主要工具 caddy.exe caddy 服务 (dnf 安装)
配置文件 运行目录下的 Caddyfile /etc/caddy/Caddyfile
根证书路径 AppData\Roaming\Caddy\... /var/lib/caddy/...
网络要求 允许程序通过 Windows 防火墙 必须执行 firewall-cmd 放行 443
iPhone 操作 一致 :安装证书 -> 手动开启完全信任 一致 :安装证书 -> 手动开启完全信任

💡 核心提醒 :很多用户安装了证书但忘记在"关于本机"里手动开启完全信任开关,导致 HTTPS 依然失效,请务必检查该设置。

您在寻找证书文件的过程中是否遇到了困难?我可以帮您确认具体的文件路径。

相关推荐
猪八宅百炼成仙37 分钟前
让 AI 帮你清理电脑而不翻车:一个 Windows 体检调优 Skill 的工程化设计
人工智能·windows
鱼宵2 小时前
取集合第一个元素,Java 为什么要写三种写法?
java·windows·python·java21
kingx33 小时前
Windows Server 2008 应急加固实战:7 项入侵痕迹排查与修复
数据库·windows·提权·应急响应·加固
AIsoft_86893 小时前
学术讲座录音如何整理?录音APP可行吗
android·iphone
海域云SeaArea_6 小时前
Windows Server 2008 R2 从零安装 IIS7.5(二):php.ini 配置
开发语言·windows·php
andyweike6 小时前
Swift
开发语言·ios·swift
茶底世界之下7 小时前
白杯偏蓝,色温调到哪里该停?Awaking 两版正式导出
ios
IsITGirl10 小时前
VMware Fusion(Mac)Windows ARM 虚拟机 NAT (vmnet8) 报错解决记录
windows·macos·.net·桥接模式
Rudon滨海渔村10 小时前
台式机Win10实现“音量+”和“音量-”,键盘映射方案
windows·计算机外设·powertoys
2501_9159214310 小时前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程