解决gradio无法通过ip访问
目录
1.介绍
2.原因
4.解决方法二:设置本地ip
5.结果
6.附加
1.介绍
先来看看遇到的情况:
使用gradio作了一个图像识别的面板,可以通过localhost:7860访问,但是没法通过IP:7860访问:
2.原因
默认情况下,Gradio启动时只允许从本地机器访问,即 localhost
或 127.0.0.1
,这意味着无法从局域网的其他设备访问。如果你希望通过局域网访问Gradio应用,需要将 share
参数设置为 True
,或者指定一个本机IP地址作为 server_name
,并显式开放端口。
3.解决方法一:修改share
改前代码:
# 启动Gradio应用
if __name__ == "__main__":
interface.launch()
允许share:
if __name__ == "__main__":
interface.launch(share=True)
4.解决方法二:设置本地ip
if __name__ == "__main__":
interface.launch(server_name="0.0.0.0", server_port=7860) # 允许局域网访问
5.结果
6.附加
防火墙配置: 如果你在系统中启用了防火墙,确保你开放了相应的端口(如 7860
)。在 Ubuntu 中可以使用以下命令开放特定端口:
sudo ufw allow 7860/tcp