我想从主机操作系统访问来宾操作系统上的端口。我在来宾操作系统上使用 127.0.0.1,因为我的数据库也在该网络中,而且因为我现在才明白(虽然它就在我面前)192. 网络和 127. 网络是完全独立的,所以我会使用某种转发,但我不知道具体该怎么做。
# firewall-cmd --list-ports
8080/tcp 80/tcp 443/tcp 8000/tcp
# nmap -p 8000 192.168.1.10 (from host OS)
PORT STATE SERVICE
8000/tcp closed http-alt
# nmap -p 8000 localhost (from guest OS)
PORT STATE SERVICE
8000/tcp open http-alt
nmap
但是,当我从来宾操作系统内部使用检查端口时,我会得到状态open
,而从客户端计算机我会得到状态closed
,这可能是因为 192. vs 127.?
我在这里做错了什么?
答案1
在问这个问题时,我犯了一个非常严重的错误,没有意识到我正在打开的端口与localhost
.因此,主机端的所有调查都表明该端口拒绝访问,因为没有任何东西在运行0.0.0.0:8000
,因为我的程序正在运行localhost:8000
。
为了解决这个问题,并使程序可以从主机操作系统访问,我只需修改nginx
机器上已有的配置文件,并将共享文件夹粘贴到/var/www/html
.
请看这如果你想进一步了解如何允许 nginx 以更方便的方式使用共享文件夹,而不是在每次编辑后复制粘贴(谁会想要这样做......)。