我需要设置我的计算机,以便为 LAN 上的所有计算机提供页面。我的网站主页(即没有子域的主页)可以正常工作,其他计算机可以通过以下网址访问它:http://狐狸(我的电脑名称)但是当他们尝试访问子域时,他们会被重定向到 www.subdomain.vulpecula,这是行不通的。
奇怪的是,当我在自己的电脑上访问子域时,它不会重定向并且工作正常。我也尝试过使用全小写的服务器名称,但这没有任何区别。
为了提供帮助,我在下面附上了两个文件的内容:
在 /etc/hosts 中:
192.168.1.103 Vulpecula # Added by NetworkManager
127.0.0.1 localhost.localdomain localhost
::1 Vulpecula localhost6.localdomain6 localhost6
127.0.0.1 subdomain.vulpecula
127.0.0.1 extra.vulpecula
192.168.1.103 subdomain.vulpecula
192.168.1.103 extra.vulpecula
#::1 Vulpecula localhost6.localdomain6 localhost6
#127.0.1.1 Vulpecula
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
/etc/apache2/httpd.conf
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /home/thomas/hello
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName subdomain.vulpecula
DocumentRoot /home/thomas/sub/0.0.6
</VirtualHost>
<VirtualHost *:80>
ServerName extra.vulpecula
DocumentRoot /home/thomas/hello
</VirtualHost>
答案1
您可以:
- 将 subdomain.vulpecula 放入所有客户端的 /etc/hosts 文件中;或者
- 将 subdomain.vulpecula 放入您的 LAN 的内部 DNS。
您的 LAN 上的其他计算机可能遇到的情况是,subdomain.vulpecula 是一个未知名称,因此它们的浏览器会添加“www.”前缀,以尝试找到可解析的名称。一旦您确保 subdomain.vulpecula 解析为有效的 IP 地址,此问题就会消失。