2013-08-26 27 views
0

我正在使用Vagrant管理Ubuntu实例以测试Web应用程序。我无法通过https设置其登录页面。由于应用程序正在使用Apache2 + php5 + mysql。我已经设置了端口转发,像这样从主机访问应用程序。Vagrant Apache2 http/https端口转发

config.vm.network :forwarded_port, guest: 80, host: 8080

当我尝试访问使用http://localhost:8080客人,将其重定向到https://localhost:8080 其中接缝合理,但8080端口转发到http:80位端口没有到https:43。
so url https://localhost:8080是半真半假。我不知道如何转发https端口到客户端https端口,但我不知道会发生什么https://localhost:8080重定向,因为这是无效的网址应该是(我认为)像https://localhost:4343,如果https:4343被转发给客人: 43。但是,应用程序不知道的端口,它只是改变httphttps

(原谅我的胡言乱语)

我怎么设置流浪网络设置访问来宾的Apache HTTP:80个https:43个端口。我可以为访客实例分配一个静态IP并愉快地使用它。

关于使用

流浪1.1.5版

Ubuntu的precise64.box

回答

1

为您的使用情况下,默认的网络模式 - NAT是不是一个很好的选择,因为你有多个端口(至少80和443)被转发。

我建议使用桥接模式,以便guest虚拟机显示为LAN中的物理主机,并且您将能够使用LAN IP访问HTTP/HTTPS。你不需要做端口转发(实际上你不能在VirtualBox中为桥接模式做端口转发)。

要使用桥接模式(公共网),在您的Vagrantfile添加config.vm.network :public_networkVagrant.configure块,做一个vagrant reload,它应该工作得很好。使用ifconfig -a进行检查,将为桥接添加第二个接口。

参考:http://docs.vagrantup.com/v2/networking/public_network.html

+0

我怕有人会问我了点。其实DHCP不受我控制,我必须要求LAN管理员启用我的实例MAC地址以使用DHCP。我正在寻找以避免这种麻烦。是否有可能与私人statiz ip,只有我的主机操作系统可见? – sakhunzai

+1

是的,当然你可以使用专用网络(相信是VirtualBox中的主机)。 VirtualBox在主机和来宾之间提供了一个虚拟网络引擎(路由器),您可以将静态IP分配给虚拟机。它被记录:http://docs.vagrantup.com/v2/networking/private_network.html –

+0

由于专用网络正在工作 – sakhunzai