ComfyUI 是一个基于 Stable Diffusion 的节点式图形用户界面(GUI),广泛用于 AI 图像生成。其 Windows 独立版本(便携版)是一种无需复杂安装即可运行的版本,通常以压缩包形式分发,用户下载后解压即可使用。本报告详细探讨该版本是否支持局域网内其他机器的访问,并提供配置方法及相关背景信息。
背景与默认行为
ComfyUI 的便携版默认通过本地 Web 服务器运行,用户通过浏览器访问 http://127.0.0.1:8188 进行操作。这里,127.0.0.1 是环回地址,仅限于本地机器访问,因此默认情况下无法从局域网内的其他机器访问。这是因为服务器默认绑定到本地主机接口。

配置局域网访问的方法
要使 ComfyUI 支持局域网访问,需要修改运行脚本(如 run_nvidia_gpu.bat),以更改服务器的监听地址。研究表明,关键在于添加 –listen 参数,具体步骤如下:
找到 ComfyUI 安装目录下的 run_nvidia_gpu.bat 文件(或类似用于 NVIDIA GPU 的运行脚本)。
打开文件,找到类似以下的命令行:
.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --normalvram
在命令末尾添加 –listen 0.0.0.0,修改为:
.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --normalvram --listen 0.0.0.0
保存文件,重新运行脚本。
这里的 –listen 0.0.0.0 表示服务器监听所有可用网络接口,从而允许局域网内的其他机器访问。用户还可指定特定 IP 地址(如 –listen 192.168.1.100),但 0.0.0.0 是更常见的选择。
访问方式
配置完成后,其他机器可通过目标机器的局域网 IP 地址和默认端口 8188 访问 ComfyUI。例如,如果目标机器的 IP 为 192.168.1.100,其他机器可在浏览器中输入 http://192.168.1.100:8188 访问。
要查找目标机器的 IP 地址,可在 Windows 上:
- 打开命令提示符,输入 ipconfig,查找 “IPv4 地址” 字段。
- 或在设置中导航至 “网络和 Internet” -> “属性”,查看 IPv4 地址。
技术细节与代码分析
ComfyUI 的服务器使用 Twisted 框架实现,启动时会读取配置并绑定到指定主机和端口。默认情况下,主机设置为 127.0.0.1,端口为 8188。通过添加 –listen 参数,系统会更新配置字典 config.config[“server_host”] 为指定的 IP 地址(如 0.0.0.0),从而使服务器监听局域网接口。
具体来说,代码逻辑在 ComfyUI/windows_standalone.py 中处理:
- 如果检测到 –listen 参数,会将该参数的值设置为 config.config[“server_host”],并移除该参数后启动服务器。
- 服务器启动时(在 ComfyUI/server.py 中),会使用 config.get(“server_host”, “127.0.0.1”) 获取主机地址,并通过 reactor.listenTCP 绑定到该地址。
尽管早期文档中存在一些混淆(如 –listen 与 –host 的使用),但社区讨论和最新代码表明, –listen 是便携版中常用的参数。
安全与注意事项
启用局域网访问后,需注意网络安全:
- 确保网络环境可信,防止未经授权的访问。
- 可能需要配置防火墙,允许 TCP/UDP 端口 8188 的流量,尤其是在非私有网络中。
- 考虑使用 HTTPS 或其他安全措施以保护通信。
社区与资源
相关讨论显示,Reddit 和 GitHub 社区提供了许多实用建议。例如,一篇 Reddit 帖子建议为工作站设置静态 IP 以便稳定访问 (Reddit: Access ComfyUI from local network),而 GitHub 问题中用户分享了如何通过 –listen 参数实现远程访问 (GitHub Issue: How can I reach ComfyUI that runs at home from my office?)。
对比与局限
与桌面版相比,便携版的配置更依赖脚本修改,而桌面版可能提供图形界面设置(如 Settings -> Server Configuration)。此外,部分用户报告在复杂网络环境中可能需要额外的端口转发或路由器配置,但这超出了本报告的范围。
总结表格
以下是关键配置步骤的总结:
步骤 | 描述 |
1. 找到运行脚本 | 定位 run_nvidia_gpu.bat 文件 |
2. 编辑脚本 | 添加 –listen 0.0.0.0 到命令末尾 |
3. 保存并运行 | 重新运行脚本,服务器监听所有接口 |
4. 访问方式 | 其他机器输入 http://<目标IP>:8188 访问 |
5. 检查 IP 地址 | 使用 ipconfig 命令查看目标机器的 IPv4 地址 |
6. 安全注意 | 确保网络可信,必要时配置防火墙允许端口 8188 |
结论
ComfyUI 的 Windows 独立版本(便携版)通过修改运行脚本支持局域网内其他机器访问,方法是添加 –listen 0.0.0.0 参数,使服务器监听所有网络接口。配置后,其他机器可通过目标机器的 IP 地址和端口 8188 访问,但需注意网络安全和防火墙设置。
关键引用
- How to Access ComfyUI from Local Network ComfyUI Wiki
- Access ComfyUI from local network Reddit
- How can I reach ComfyUI that runs at home from my office? GitHub Issue
RA/SD 衍生者AI训练营。发布者:稻草人,转载请注明出处:https://www.shxcj.com/archives/9506