在设置运行CentOS7的流浪汉后,我在连接到mean.io服务器时遇到问题。我有端口转发和禁用/打开防火墙但仍无法对wget或curl -v做出响应。
以下步骤我已自动进入现在的位置:
git clone git@github.com:Scrier/Vagrant.git
cd Vagrant/mean
vagrant up
这里我通过端口转发设置获得输出:
==> default: Attempting graceful shutdown of VM...
==> default: Clearing any previously set forwarded ports...
==> default: Couldn't find Cheffile at ./Cheffile.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 3000 => 3000 (adapter 1)
default: 35729 => 35729 (adapter 1)
default: 80 => 8888 (adapter 1)
default: 22 => 2222 (adapter 1)
...
后续步骤在Vagrant中:
vagrant ssh
cd /vagrant
sudo ./install.sh
sudo npm install -g gulp
sudo npm install -g bower
sudo npm install -g mean-cli
最后3个命令有时候不会在以后的步骤中抱怨某些npm:s由root拥有。不确定是什么引发了这个。
接下来,我在/ vagrant
中创建一个测试项目mean init test
然后我尝试以gulp(cd test&& npm install&&& gulp)或服务器(节点服务器)运行
默认应用程序启动良好并开始侦听端口3000.我可以卷曲流浪汉并在服务器应答的localhost上执行wget。
curl 'http://localhost:3000'
wget 'http://localhost:3000'
从流浪者外面做这件事给了一个锁定,我在搜索3天后现在无法在网上找到更多帮助。
curl -v 'http://localhost:3000'
wget 'http://localhost:3000'
给出这个输出:
Andreass-MBP:~ andreasjoelsson$ wget 'http://localhost:3000'
--2015-04-21 20:50:30-- http://localhost:3000/
Resolving localhost... 127.0.0.1, ::1, fe80::1
Connecting to localhost|127.0.0.1|:3000... connected.
HTTP request sent, awaiting response... ^C
Andreass-MBP:~ andreasjoelsson$ curl -v 'http://localhost:3000'
* Rebuilt URL to: http://localhost:3000/
* Hostname was NOT found in DNS cache
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 3000 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.37.1
> Host: localhost:3000
> Accept: */*
>
^C
两个停止响应。
我已经阅读过关于设置ip 0.0.0.0而不是localhost来解决运行nodejs的类似问题,但我无法找到任何配置。
答案 0 :(得分:1)
所以,经过很长一段时间的冲击,我在这个帖子中尝试了一个建议,让它发挥作用:Empty reply from server - can't connect to vagrant vm w/port forwarding
通过将localhost的/ etc / hosts中的127.0.0.1更改为0.0.0.0,它开始工作。似乎很奇怪我必须攻击/ etc / hosts而不是mean.io中的设置,但我得到了它的工作,所以我会悄悄地忘记它并且很高兴它的工作原理。
以下是使其正常工作的快速命令。
sed -i -E "s/127.0.0.1(.*)/0.0.0.0\1 # Replaced 127.0.0.1 to work with Vagrant external access./" /etc/hosts
可能需要以root身份运行它。