我在/ var / www / html下有两个目录,名为vlp1,vlp2和Vagrant设置。如果我在这些文件夹中单独运行vagrant up
,则默认本地网址为vagrant.local
。但vagrant.local/
始终从vlp1文件夹加载网站。
应该是这样,vagrant global-status
表明我有两个在这些目录下运行的虚拟机。我需要并排运行这两个站点并且这样做我看到的唯一选项是拥有单独的URL。我相信有一种方法可以为不同的网站分配不同的网址,但不知道如何!
我需要做些什么来完成上述操作,以便我的网站像 local.vlp1.com 和 local.vlp2.com 一样运行,或者可能像 vagrant.vlp1 和 vagrant.vlp2 ?
根据项目说明,我必须将两个网站完全分开放在两个文件夹中,并且必须使用单独的Vagrantfiles
。
谢谢!
更新 按照Henri的建议完成以下步骤:
第1步:
$ vagrant global-status
输出:
id name provider state directory
------------------------------------------------------------------------
eb9b569 default virtualbox running /var/www/html/vlp1
190608c default virtualbox running /var/www/html/vlp2
第2步:在vlp2上正常关闭
$ vagrant halt 190608c
第3步:现在输出vagrant global-status
id name provider state directory
-------------------------------------------------------------------------
eb9b569 default virtualbox running /var/www/html/vlp1
190608c default virtualbox poweroff /var/www/html/vlp2
第4步:
$ sudo gedit /var/www/html/vlp2/Vagrantfile
if CONF['ip'] == "dhcp"
config.vm.network :private_network, type: "dhcp", hostsupdater: "skip"
else
config.vm.network :private_network, ip: "192.168.2.5"
end
第5步:重新启动vlp2计算机
$ vagrant up 190608c
第6步:
$ vagrant global-status
现在显示两台机器再次回到运行状态。
id name provider state directory
------------------------------------------------------------------------
eb9b569 default virtualbox running /var/www/html/vlp1
190608c default virtualbox running /var/www/html/vlp2
第7步: 在/ etc / hosts中添加了以下条目
192.168.2.5 vagrant.vlp2
最后我在浏览器中尝试了vagrant.vlp2 /,但最终得到以下消息:
无法联系到本网站 http://vagrant.vlp2/无法访问。
答案 0 :(得分:0)
据我所知,您正在使用多个VM,因此在这种情况下最简单的方法是为每个VM分配一个静态IP(必须是不同的),以便在Vagrantfile中执行此操作
Vagrant.configure("2") do |config|
...
config.vm.network "private_network", ip: "192.168.10.x"
...
end
并为第二个VM使用另一个IP
Vagrant.configure("2") do |config|
...
config.vm.network "private_network", ip: "192.168.20.y"
...
end
然后使用信息
更新/etc/hosts
文件
192.168.10.x vagrant.vlp1
192.168.20.y vagrant.vlp2