从一个VM实例到另一个VM(Vagrant)的卷曲请求似乎不起作用
我有两台运行Scotchbox(Vagrant)实例的虚拟机,实质上有'前端'应用程序(AngularJS)和'后端'的应用程序(Zend/PHP等..)从一个VM实例到另一个VM(Vagrant)的卷曲请求似乎不起作用
我有他们安装在两个单独的流浪者实例,并从下面的IP运行(将它们添加到我的Windows主机文件),所以我可以通过域名访问它们不仅仅是IP地址)
192.168.33.10 myappfront.local
192.168.33.11 myappback.local
在我的前端应用我运行,卷曲下面的PHP代码,基本验证令牌当用户登录S IN
$ch = curl_init();
$parameters = $apiUrl . '/user/login/verify-new-ui?id='.$_REQUEST['id'].'&token='.$_REQUEST['token'].'&appid=3';
curl_setopt($ch, CURLOPT_URL, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$data = json_decode(curl_exec($ch)); // always NULL??
curl_close($ch);
的$参数变量将包含类似于下面的网址... https://myappback.local/user/login/verify-new-ui?id=1000001445&token=1shg7x1y7u53c1cppg36&appid=3
当我尝试的var_dump出$ data变量总是空 - 我知道该功能的作品(它运行在我们的现场网站罚款),所以让我相信这是一些流浪汉相关?
流氓实例中是否与防火墙相关?任何人都可以提出解决这个问题的最佳方法吗?
我vagrantfile如下:
Vagrant.configure("2") do |config|
config.vm.box = "scotch/box"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.hostname = "scotchbox"
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
config.vm.box_download_insecure = false
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
config.vm.provision :shell, :path => "bootstrap.sh"
end
//其他后端流浪汉箱
Vagrant.configure("2") do |config|
config.vm.box = "scotch/box"
config.vm.network "private_network", ip: "192.168.33.11"
config.vm.hostname = "scotchbox"
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
末
您应该添加相同的记录到虚拟机,这使得请求。如果您只在本地主机上添加这些记录 - 只要您可以测试任何请求,请使用浏览器。
,如果它可以帮助别人...使用以下内容来修改主机通过使用vagrant ssh文件然后运行这个命令。 sudo nano/etc/hosts – Zabs
你可以播放节目,存储在变量$ apiUrl中吗?你在哪里添加了这个: 192.168.33.10 myappfront.local 192.168.33.11 myappback.local 我的意思是在localhost或流浪机上? – Evgeniy
我是否需要编辑两个流浪者实例中的hosts文件? – Zabs
当然,如果您仅在本地主机上添加此记录 - 只要您可以测试任何请求,请使用浏览器。如果您需要从一个虚拟机发出请求到另一个虚拟机,您应该将相同的配置添加到发出请求的虚拟机中。 – Evgeniy