在Ubuntu上将Apache设置为LAN上的服务器子域

我需要设置我的电脑为局域网上的所有电脑提供页面。 我的网站的主页面(即没有子网域的网页)有效,其他计算机可以通过http:// vulpecula (我的电脑的名称)访问它,但是当他们尝试访问子域名时,他们被redirect到www.subdomain.vulpecula,这是行不通的。

奇怪的是,当我去我自己的电脑上的子域,它不redirect,工作正常。 我也尝试所有小写服务器名称,但这没有什么区别。

我已经包含了以下2个文件的内容以获得帮助:

/ 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文件中; 要么
  2. 将subdomain.vulpecula放入您局域网的内部DNS。

在局域网上的其他计算机上可能发生的情况是,subdomain.vulpecula是一个未知的名字,所以他们的浏览器会粘上“www”。 前缀试图find解决的名称。 一旦你确定subdomain.vulpeculaparsing为一个有效的IP地址,这个问题应该消失。