需要从主机/另一台计算机访问本地托管(Ubuntu VM)网站

需要从主机/另一台计算机访问本地托管(Ubuntu VM)网站

因此,我在 Ubuntu VM 中创建了一个 wordpress 网站,并将其本地托管在那里。我按照网上能找到的所有教程操作,但都无济于事,因此我将尝试在描述中尽可能详尽。

  • 我需要从网络上的其他计算机访问该网站,因此我认为我应该先从运行 Windows 10 的主机访问该网站。
  • 我确保我的虚拟机运行的是桥接模式,而不是 NAT 模式
  • 在我的虚拟机中,/etc/hosts我将其更改127.0.0.1site.local而不是localhost
  • 在我的主机的主机文件中,我添加了192.168.1.139 site.local,其中这是我的 VM 的 IP,通过运行确定ifconfig
  • 在我的apache2conf 文件中,我根据在线找到的解决方案做了一些更改,但都没有奏效,所以我恢复了更改。我知道这不太具描述性,但我尝试了来自多个来源的解决方案,因此变得有点复杂。
  • 在我的虚拟机中,如果我转到 ,site.local/wordpress它会重定向到localhost/wordpress。文件localhost中不再定义。或 也是hosts如此。 它们都重定向到。127.0.0.1/wordpress192.168.1.139/wordpresslocalhost
  • 在我的主机上,我可以192.168.1.139在浏览器中输入并查看 Apache2 Ubuntu 默认页面。如果我输入,我会http://site.local看到the requested URL [no URL] is invalid.如果我输入192.168.1.139/wordpress,它会重定向到localhost/wordpress并显示The site can't be reached. localhost refused to connect
  • 777为我的 wordpress 文件夹授予了权限,但没有任何效果。
  • 我的主机可以成功 ping 通虚拟机的 IP
  • 我在 Windows 机器上设置了一条新规则,监听端口 80 上的 TCP 连接

这就是我目前的情况。我希望我已经描述得足够详细了。本质上,我可以连接到虚拟机,因为我可以访问 Apache2 Ubuntu 默认页面,但我无法访问我的 wordpress 网站。提前感谢您的帮助;我真的被这个问题难住了。

找到解决方案:

星期五晚上,当我准备离开办公室时,我意识到一个可能的解决方案,并在今天早上进行了测试。它有效。问题是在数据库中的某个地方,它将我输入的 IP 重定向到“localhost”,当它在另一台计算机上运行时,它试图使用该计算机的本地主机。按照本文并将所有出现的“localhost/wordpress”替换为“ip-of-vm/wordpress”,这样就解决了问题,并且可以在其他计算机上运行。

答案1

如果出现此情况,请告知我们网上帖子对您有用。
建议:测试时禁用所有机器上的所有防火墙。运行后,您可以设置防火墙规则,重新启用防火墙,并确保它按预期运行。

相关内容