Apache:使用子域设置本地testing服务器

我的桌面计算机上运行着XAMPP,我没有任何问题就可以做所有的工作。

http://localhost ---> points to public_html http://site1.localhost ---> points to site 1 http://site2.localhost ---> points to site 2 http://site3.localhost ---> points to site 3 

在使用Apache的计算机上的Web浏览器中input上述URL效果很好,我可以在不同子域内的多个站点上工作。

但是现在我想要做的是将Apache和所有文件传输到局域网内的另一台Windows 7计算机上,但仍然能够从我的主开发机器上查看子域。

在新的托pipe机器上安装一个vanilla XAMPP,在我的开发计算机中input该机器的IP地址(例如192.168.1.10)会将我发送到主public_html文件夹。

但是,如何设置子域以便我可以在外部访问? 例如, http://site1.devmachine

谢谢你的帮助。

编辑工作站的%systemroot%/ system32 / drivers / etc / hosts并添加:

192.168.1.10 site1.devmachine

192.168.1.10 site2.devmachine

这将做什么是将site2.devmachineparsing到您的新的开发服务器的IP地址。 由于您在发出请求时将主机标头发送到开发者服务器,因此Apache知道要加载的虚拟主机。

只要你知道,.devmachine可以是任何东西:你甚至可以把realdomain.tld放在那里(虽然我不build议这样做,但是我发现我会忘记它,并想知道为什么网站看起来“老”)。

我发现在DNSMasq中设置一个通配符比较容易,并且做了拆分DNS,这样当我在我的局域网上,我可以拉起同一个站点,就像我远程访问它时一样(我使用* .dev.mydomain.com, *被客户端名称取代;我的真实互联网DNS服务器也有相同的通配符条目)在客户端进行演示。 现在,当我想要设置一个新的网站,我只需要在Apache中创build一个新的虚拟主机,而不用担心DNS。

将DNS服务器添加到您的networking,并为site1.devmachine.local等创build条目

让你的开发机器使用这个DNS服务器。

虽然这可能是矫枉过正。 您可以更轻松地将条目添加到c:\ WINDOWS \ system32 \ drivers \ etc中hosts文件。 这只在你的devmachine上。

添加这样的条目:

192.168.1.22 site1.devmachine.local

192.168.1.22 site2.devmachine.local

192.168.1.22 site3.devmachine.local