vb虚拟机安装win7(vmware虚拟机使用教程)


在Ubuntu虚拟机中,可通过几行代码搭建一个非常简单的flask web服务。

from flask import Flask

app=Flask(__name__)

@app.route('/')
def index():
	return 'hello world'

if __name__=="__main__":
	app.run(debug=True)

运行代码后,打开Ubuntu中浏览器访问127.0.0.1:5000即可正常显示hello world,但如果在Win10中使用浏览器访问对应地址则无法显示。

先说明下为什么有在主机Win10直接访问虚拟机Ubuntu端口数据的需求。比如,个人倾向于在Ubuntu环境中开发API接口,但是一些客户端开发(比如微信小程序)只能在Win10或者OSX中进行。如果不能直接访问,只能在Win10中再搭建一套Python开发环境,这样会很繁琐。

接下来说下解决方案。

第一步:

修改最后一行代码为

app.run(host='0.0.0.0',debug=True) 或者 app.run(host='10.0.2.15',debug=True)

这里host可以改成0.0.0.0(表示在局域网的任意IP上)或者10.0.2.15(在Ubuntu中通过ifconfig命令查看对应IP)

第二步:

按下图配置VirtualBox中的网络端口转发

Win10主机如何通过VB访问虚拟机(Ubuntu)端口数据

VirtualBox中点击网络,然后在点击端口转发

Win10主机如何通过VB访问虚拟机(Ubuntu)端口数据

注意红框中的IP也可以不填写,为空则默认为0.0.0.0;端口均填写5000

这样修改后即可在Win10中正常访问了。

需要注意的是,如果没有第一步修改host,第二步无论怎么设置都不会成功,比如两个IP都设置成127.0.0.1或者0.0.0.0。由于网络知识有限,具体原因不太清楚,如果有朋友知道不修改host直接通过VB的端口转发即能成功,欢迎评论,感谢!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论