流浪汉"域名转发"

sen*_*her 5 subdomain networking vagrant

目前,我已经习惯于创建开发域,例如: projecttowork.dev.

现在我有一个项目,我也必须使用子域,如:module1.project.dev

我想开始使用Vagrant,因为它看起来很棒,而且我和其他人一起工作,所以到处都有相同的服务器会很棒.

在Vagrant中,我当然可以转发一个端口,例如:8000并在虚拟机上获取服务器,但我无法弄清楚,如何"转发"域.

我尝试了不同的方法,但没有任何成功.

一些细节:

  • 操作系统:Windows 8
  • Vagrant box:基本的Ubuntu 12.04 LTS
  • 客户端上的Web服务器:Nginx
  • 主机上的Web服务器:Apache(如果需要)

我怎样才能将此开发域重定向到虚拟服务器?

Tom*_*mor 5

-我在Vagrant文​​件中的网络设置是:

config.vm.network "private_network", ip: "192.168.20.20" #choose you own
Run Code Online (Sandbox Code Playgroud)

-在主机机器的/ etc / hosts文件(Linux版)的Windows / SYSTEM32 / DRIV ... /主机(窗口)

192.168.20.20 domain.tld 
Run Code Online (Sandbox Code Playgroud)

-在该框上检查防火墙(iptables-如果该框是linux)。

-在框中,为该域设置virtualhost(仅作为示例):

<VirtualHost *:80>
  ServerName domain.tld

  DocumentRoot "/path"
  RewriteEngine On

  <Directory "/path">
    Options Indexes FollowSymLinks
  </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

  • 这个插件可以自动执行“主机”更新:https://github.com/cogitatio/vagrant-hostsupdater (3认同)

at0*_*mzk 0

您之前是否使用过 etc/hosts 文件将开发域指向您的开发机器 IP?同样的方式,只需为每个子域添加 1 行,将它们指向您的 vagrant box IP,例如:

module1.project.dev 192.168.1.2 module2.project.dev 192.168.1.2 ...