2012-05-01 227 views
0

好的。我的本地开发机器上有LAMP服务器。我需要开发几个网站。所以,我已经在$ APACHE/sites-available中创建了两个文件(我的站点的配置),并为他们启用了/ sites-enabled的符号链接。之后,我开始sudo /etc/init.d/apache2 restart。没有错误或警告。当我尝试mysite.dev时,它会给出它,当foobar.dev - 它给出mysite.dev!Apache Multiply Sites again

所以,Apache为所有虚拟主机提供了一个站点。如何解决它?

http://pastebin.com/qjcx6RS3(第一现场) http://pastebin.com/FdVStJm8(第二站点)

回答

0

你需要设置NameVirtualHost-directive这样在httpd.conf:

NameVirtualHost *:80 

例子有两个虚拟主机(像你的情况):当然

NameVirtualHost *:80 

<VirtualHost *:80> 
ServerName www.domain.tld 
ServerAlias domain.tld *.domain.tld 
DocumentRoot /www/domain 
</VirtualHost> 

<VirtualHost *:80> 
ServerName www.otherdomain.tld 
DocumentRoot /www/otherdomain 
</VirtualHost> 

...这将也有可能include的虚拟主机来回回m分隔文件到httpd.conf中。

+0

现在它打印:“NameVirtualHost *:80没有虚拟主机” – tucnak

+0

请确保包含您的虚拟主机文件(http://httpd.apache.org/docs/2.0/de/mod/core.html#include )在httpd.conf中移动'ServerName',并在severfault中提到'' – Seybsen

+0

之内提到它也可以在你的配置中设置两次'NameVirtualHost':http://serverfault.com/问题/ 1405 /阿帕奇-2-启动预警-了NameVirtualHost-80-HAS-无virtualhosts – Seybsen