我想在本地计算机上设置多个网站。我希望本地网络上的所有其他计算机都能够访问这些计算机。
所以我想映射不同的项目/www/html/<proj_web_root>
到<proj_name>.localhost
所以所有其他计算机都可以访问这些网站
<proj_name>.my_ip
和我本地的<proj_name>.localhost
如何在/etc/apache2/sites-enabled
个文件和/etc/hosts
答案 0 :(得分:0)
就个人而言,我会避免将.local域用作共享组域。使用像.dev
这样的东西在Apache中,您可以在VirtualHost中使用ServerName和ServerAlias指令并重写规则以实现URL路由,例如
<VirtualHost *:80>
ServerName www.dev
ServerAlias sub.dev
DocumentRoot /www/html
RewriteRule ^(.*) %{HTTP_HOST}/$1
</VirtualHost>
您还可以使用明显的通配符别名。在/ etc / apache / sites-available中保存为dev.conf。激活工作:
a2enmod rewrite
a2ensite dev
我一般不赞成主持黑客,但如果你坚持,这只是一个向/ etc / hosts添加内容的案例
这种方法的一个问题是你不能在主机名上使用通配符。我建议使用类似dnsmasq的东西,因为你可以添加通配符条目。在/etc/dnsmasq.conf中,您可以添加类似的内容(相应地更改IP地址):
address=/.dev/10.0.0.2
在所有情况下,请使用/etc/resolv.conf了解dns解析的优先级