2016-03-28 31 views
0

我尝试使用apache和虚拟主机在一台服务器上设置两个域。我为每个域创建了一个conf文件,但似乎apache总是使用000-default而不是我自己的conf文件。为什么apache总是返回000默认值而不是其他虚拟主机?

这是我的目录结构:

/var/www# ls -al 
-rw-r--r-- 1 www-data www-data 236 Mär 11 16:21 .htaccess 
-rw-r--r-- 1 root  root  43 Mär 28 05:22 index.html 
drwxr-xr-x 5 www-data www-data 4096 Mär 28 05:02 domain-1.de 
drwxr-xr-x 2 www-data www-data 4096 Mär 28 05:13 domain-2.de 

我想我已经启用了两个领域:

ls -l /etc/apache2/sites-enabled/ 
lrwxrwxrwx 1 root root 26 Mär 7 09:18 000-default -> ../sites-available/default 
lrwxrwxrwx 1 root root 38 Mär 28 03:56 domain-1.de -> ../sites-available/domain-1.de 
lrwxrwxrwx 1 root root 39 Mär 28 03:56 domain-2.de -> ../sites-available/domain-2.de 

这是我自己的conf文件的内容:

<VirtualHost *:80> 
    ServerName domain-2.de 
    ServerAlias www.domain-2.de 
    DocumentRoot /var/www/domain-2.de 
</VirtualHost> 

我以root身份重新启动apache(服务apache2重新加载)。 但是不管哪个域,只显示的页面是/ var/www中的index.html。

这是/var/log/apache2/error.log的内容:

[Mon Mar 28 07:15:02 2016] [notice] Graceful restart requested, doing restart 
[Mon Mar 28 07:15:02 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.45-0+deb7u2 configured -- resuming normal operations 
+0

'service apache2 restart'有什么区别。也许试试sudo – Sarcoma

+0

请添加您请求的网址。 – arkascha

+0

在这里做什么“更多的domain-2.de”? – arkascha

回答

0

几件事情可以使你所遇到的问题:

  • 如@arkascha在评论中提到的,您可能必须将.conf扩展添加到启用的vhost文件,否则Apache可能无法加载配置。
  • 检查www.domain-2.de是否指向DNS记录中的服务器IP,或尝试将其添加到/etc/hosts文件中。

此外,你可能想尝试添加所有三个虚拟主机配置到000-default配置文件只是为了检查是否有效。

+0

说明明确排除了您提到的第二个选项:请求_are_由该系统提供。你当然不希望在你的结语中做你的建议。对不起,但这个答案不提供任何额外的帮助。 – arkascha

0

我终于找到了解决方案。 在other_vhosts_access.log有多个条目等

[28/Mar/2016:09:50:11 -0500] "GET /index.html HTTP/1.1" 304 212 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0" 

HTTP返回代码304的意思是“不修改”,因此在页面未再次传送。清除浏览器缓存后,一切都按预期工作。

thx!

+0

请求将永远不会从缓存的对另一个域的回复中提供!很奇怪。 – arkascha