虚拟主机设置不起作用

时间:2016-01-15 06:54:33

标签: apache virtualhost

我在vps服务器上托管两个域。域名,比如www.abc.net(或abc.net)和www.xyz.net(或xyz.net)有以下配置

<VirtualHost *:80>
    ServerName abc.net
    ServerAlias www.abc.net
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/abc.net
    ErrorLog ${APACHE_LOG_DIR}/abc.net.error.log
    CustomLog ${APACHE_LOG_DIR}/abc.net.access.log combined
</VirtualHost>

<VirtualHost *:80>
    ServerName xyz.net
    ServerAlias www.xyz.net
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/xyz.net
    ErrorLog ${APACHE_LOG_DIR}/xyz.net.error.log
    CustomLog ${APACHE_LOG_DIR}/xyz.net.access.log combined
</VirtualHost>

除了这些,我有默认的apache2 00-default-site.conf (未更改)和rutorrent.conf

<VirtualHost *:80>
    ServerAlias *
    DocumentRoot /var/www/
    CustomLog /var/log/apache2/rutorrent.log vhost_combined
    ErrorLog /var/log/apache2/rutorrent_error.log
    SCGIMount /rutorrent/RPC2 127.0.0.1:5000

    <Directory "/var/www/rutorrent">
            AuthName "user1"
            AuthType Basic
            Require valid-user
            AuthUserFile /var/www/rutorrent/.htpasswd
    </Directory>
</VirtualHost>

假设我的ip为t.u.v.w,我有以下/ etc / hosts文件集

127.0.0.1       localhost
127.0.1.1       template.pcsmarthosting.co.uk   template
t.u.v.w         abc.net
t.u.v.w         xyz.net

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback

我可以正确访问www.abc.net,因为它转到正确的文件夹,但www.xyz.net转到/ var / www /与http://t.u.v.w相同

www.xyz.net即使是唯一启用的网站也不起作用。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

系统主机名可能是www.xyz.net,这意味着000-default的行为就好像隐含了“ServerName www.xyz.net”。

你应该在000-default中放置一个虚拟ServerName,这样就没有风险了。