我使用的是 Mac OS X,并尝试开始使用 Apache2 的 VirtualHost 功能。我创建并加载了一个如下所示的 hosts 文件:
127.0.0.1 localhost
192.168.0.71 name1
192.168.0.71 name2
目前,我只能使用 192.168.0.71,因为这是我的计算机在 LAN 上的 IP。如何才能让大范围的 IP 都指向同一台计算机?
(我对 LAN 了解不多,如果有的话。我甚至没有设置我的 LAN,我只是将我的无线路由器用作 LAN...我没有进行任何特殊的网络设置。)
答案1
您可以将网卡设置为具有 253 个静态 IP 地址 - 但这确实不是一个好方法。
如果您只想在一个 IP 地址上托管多个站点,请使用基于名称的虚拟主机,而不是 IP 虚拟主机(Windows/IIS 中的主机头的 apache 等效项)。
更多信息...http://httpd.apache.org/docs/2.0/vhosts/name-based.html
答案2
你需要的是虚拟网卡。我不知道如何在 MacOS X 中做到这一点,但似乎可以这样做:
ifconfig eth0 alias 192.168.1.1
ifconfig eth0 alias 192.168.1.2
ifconfig eth0 alias 192.168.1.3
等等...或者可能:
ifconfig eth0:1 alias 192.168.1.1
ifconfig eth0:2 alias 192.168.1.2
另一个选择是,如果您正在运行 DNS 服务器,只需为您的主 A 记录添加 CNAME(别名)。在我看来,这更方便、更简单。如果您需要任何帮助,请告诉我。
答案3
也许你看错了。设置你的 apache 使用主机名而不是 IP 来区分要提供哪些文件。然后,你可以简单地使用该名称重定向到你的计算机,或者在本地重定向,如下所示:
127.0.0.1 localhost
127.0.0.1 name1
127.0.0.1 name2
答案4
我已经像这样设置了我的开发机器
(主机文件)
127.0.0.1 localhost
127.0.0.2 project1.localhost
127.0.0.3 project2.localhost
...
然后继续在您选择的网络服务器中使用基于名称的虚拟主机配置。