【问题标题】:Vagrant public network can ping but cant get response from apache serverVagrant 公共网络可以 ping 但无法从 apache 服务器获得响应
【发布时间】:2013-11-29 19:47:44
【问题描述】:

我使用下面给定的 Vagrantfile 设置使用 virtualbox 配置了 vagrant。我可以从主机 (HM) 连接到在虚拟机上运行的 Web 服务器。

我也可以从网络机器 ping 到服务器,但是当我尝试从网络访问 Web 服务器时,虚拟机 (VM) 收到请求并说它响应 (apache),但网络机器 (NM ) 没有得到响应。

我应该如何配置 vagrant 或 virtualbox 以从 NM 访问?我尝试在 VM 接口文件上将 eth1 更改为 eth0,但它没有用。 Vagrant 无法启动机器。

提前致谢

流浪文件:

config.vm.define "web" do |web|
  web.vm.box = "raring"
  web.vm.network "public_network", ip: "192.168.0.53", bridge: 'eth0'
  web.vm.provider "virtualbox" do |v|
      v.customize ["modifyvm", :id, "--memory", 1024]
  end
end

主机接口

eth0      Link encap:Ethernet  HWaddr 54:04:a6:68:7d:85  
      inet addr:192.168.0.102  Bcast:255.255.255.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:576  Metric:1
      RX packets:142100 errors:0 dropped:0 overruns:0 frame:0
      TX packets:110704 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:61653460 (61.6 MB)  TX bytes:14976111 (14.9 MB)
      Interrupt:55 Base address:0xa000 

虚拟机界面

eth0      Link encap:Ethernet  HWaddr 08:00:27:49:4c:f1  
      inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
      inet6 addr: fe80::a00:27ff:fe49:4cf1/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:386 errors:0 dropped:0 overruns:0 frame:0
      TX packets:276 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:41117 (41.1 KB)  TX bytes:36296 (36.2 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:c3:16:90  
      inet addr:192.168.0.53  Bcast:192.168.0.255  Mask:255.255.255.0
      inet6 addr: fe80::a00:27ff:fec3:1690/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:946 errors:0 dropped:0 overruns:0 frame:0
      TX packets:1017 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:116117 (116.1 KB)  TX bytes:90515 (90.5 KB)

虚拟机 /etc/network/interfaces 文件:

# The primary network interface
auto eth0
iface eth0 inet dhcp
#VAGRANT-BEGIN
# The contents below are automatically generated by Vagrant. Do not     modify.
auto eth1
iface eth1 inet static
  address 192.168.0.53
  netmask 255.255.255.0
#VAGRANT-END

虚拟机上的 apache 响应:

192.168.0.100 - - [16/Nov/2013:10:39:10 +0000] "GET / HTTP/1.1" "curl/7.32.0" 200 7466 6005

【问题讨论】:

  • 你能发布 curl 的详细输出吗? (curl -v ...)
  • 你设法让它工作了吗?我有同样的问题。
  • 以 Ubuntu 14.04 作为基础框的 Windows 上的相同问题

标签: virtualbox vagrant


【解决方案1】:

这个问题不是来自 vagrant 或 vagrant 设置,而是因为虚拟机 (VM) 中的 apache 配置错误。

在虚拟机中修改你的 apache 站点配置:

vim /etc/apache2/sites-enabled/yours_site_config.conf

将服务器名称更改为:ServerName 192.168.0.53

重启 apache 后在浏览器中查看结果。

例如:

<VirtualHost *:80> ServerAdmin servers@localhost ServerName 192.168.0.53 DocumentRoot /var/www </VirtualHost>

192.168.0.53 - 这是你的虚拟机的 inet 地址。

【讨论】:

    猜你喜欢
    • 2017-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-14
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多