试图建立第二个网站

时间:2012-05-11 08:12:54

标签: ubuntu apache2 web-hosting multiple-sites

我在apache2服务器上设置sencond网站时遇到问题。 我目前有一个网站启动并运行,甚至是现场直播。 但是我有另一个我正在研究的网站,并且我正在尝试在本地托管它。 我使用以下

创建了一个名为newsite的站点可用文件
<VirtualHost *:80>
        ServerName newsite
        ServerAdmin webmaster@localhost

    DocumentRoot /var/www/newsite/
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/newsite/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

我使用a2ensite newsite

启用它

我编辑主​​机文件 127.0.0.1 www.newsite.com

我已经运行a2ensite newsite

现在,当我查看新网站时,它工作正常, 但是当我尝试查看我的原始网站时,我只获得了新网站

如果我禁用新网站(a2dissite newsite),原始网站显示正常

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

我认为您没有正确设置ServerNameServerAlias指令。

对于两个虚拟主机,它们都应该是这样的

 ServerName newsite.com 
 ServerAlias www.newsite.com 
 ServerName oldsite.com 
 ServerAlias www.oldsite.com

目前发生的事情是您已经设置了一个名为newsite的虚拟主机。如果您执行http://newsite/:您将看到新网站,但您正在执行www.newsite.com。同样,如果你http://oldsite/(假设设置方式相同),你也会看到oldsite。

执行www.newsite.com时,DNS会将您引导至环回接口,但是,当apache收到请求时,它不知道如何处理它。所以它只选了一个。这与您尝试仅通过IP访问没有什么不同。

因此,您可以致电http://newsite/或修复ServerNameServerAlias指令。