我做了以下事情:
- 在 ubuntu 10 桌面上安装了 VirtualBox 3.1.6 OSE。
- 在 VirtualBox 中的虚拟机上安装了 ubuntu 10 服务器。
- 在ubuntu服务器安装过程中选择“LAMP服务器”和“OpenSSH服务器”选项。
- 将虚拟机的网络“适配器1”保留为“NAT”。
- 使用手册中描述的“VBoxManage”在主机上设置端口转发(协议:TCP、GuestPort:80、HostPort:8080)。
- 验证“ExtraDataItem”已正确添加到“ubuntuServer1.xml”(我的虚拟机名称)。
- 在虚拟机中的 ubuntu 服务器中运行命令“pgrep apache”以确保 apache 正在运行。
一切顺利。但是,当我尝试使用“http://本地主机:8080/“,它只是继续获取而没有任何回应。
现在,我被困扰了!请帮忙!
提前致谢!
答案1
您是从主机(Ubuntu 10 桌面)还是从 Ubuntu 10 服务器访问 localhost:8080?
如果您从主机(ubuntu 10 桌面)尝试,那么它将不起作用,因为它尝试查看 ubuntu 10 桌面中的端口 8080 上是否有某些东西正在运行。
你需要使用客户虚拟机的 IP 地址,例如,如果你的 ubuntu 10 服务器的 IP 为 192.160.0.5,那么你需要使用http://192.168.0.5:8080从主机(ubuntu 10 桌面)
希望这可以帮助。
亮度
答案2
我使用不同的方法。将 openSSH 服务器安装到您的主机上,然后从 VM 终端连接
ssh -R 127.0.0.1:needed_port_from_vm:new_port_at_local_machine username@localhost
EA:
ssh -R 127.0.0.1:80:8080 me@localhost
打开浏览器并转到 localhost:8080
如果这不起作用,则切换端口。我是根据记忆写的 ;) 它的作用是将端口 (80) 从用户 (vm) 定向到 ssh 服务器 (本地计算机) 端口 (8080)。它也适用于任何服务器,只是 IP 不同。
注意。少于 4 位数字(或类似数字)的端口需要 root 才能创建,因此请使用较长的数字。