为什么基于名称的虚拟主机设置的此设置不起作用?

我有两个域(siteA.com和SiteB.com),指向同一个networking服务器,我想为每个显示不同的网页。

我迄今采取的步骤是:

将默认站点(siteA)复制到站点B.

1) sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/siteB 2) sudo vim /etc/apache2/sites-available/siteB

 <VirtualHost *:80> ServerAdmin info@siteB.com DocumentRoot /var/www/siteB <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/siteB> Options Indexes FollowSymLinks MultiViews AllowOverride FileInfo Indexes Order allow,deny allow from all </Directory> </VirtualHost *:80> 

然后我在/ var / www / siteB下创build了一个样例index.html。

但是,当我加载我的域名siteB.com我仍然被定向到/var/www/siteA 。 这是为什么?

我还必须将/etc/apache2/sites-available/default重命名为/etc/apache2/sites-available/siteA吗?

更新:

感谢下面的答案,似乎我已经忘记旁边启用该网站还另一个条目:

 <VirtualHost *:80> ServerAdmin info@siteB.com ServerName siteB.com ServerAlias www.siteB.com </VirtualHost *:80> 

为了包括所有的子域名,那么做:

 <VirtualHost *:80> ServerAdmin info@siteB.com ServerName siteB.com ServerAlias *.siteB.com </VirtualHost *:80> 

siteA也一样。

  • Apache没有从预期的位置提供文件
  • 比较Nginx + PHP-FPM和Apache-mod_php
  • Apache响应请求实体太大
  • Apache2 Reload事件的副作用
  • 为什么分区已满时Apache会失败?
  • Mongrel在mod_proxy上的速度令人难以接受
  • 2 Solutions collect form web for “为什么基于名称的虚拟主机设置的此设置不起作用?”

    您是否使用命令a2ensite siteB启用siteB ,然后重新启动networking服务器?

    我一直在虚拟主机的问题挣扎几天…也许相关:这是我有:

     <VirtualHost *:80> ServerName www.domain1.com ServerAlias domain1.com Include /etc/apache2/vhosts.d/domain1.include <IfModule mpm_peruser_module> ServerEnvironment apache apache </IfModule> </VirtualHost> <VirtualHost domain2:80> ServerAlias domain2.com ServerName www.domain2.com Include /etc/apache2/vhosts.d/domain2.include <IfModule mpm_peruser_module> ServerEnvironment apache apache </IfModule> </VirtualHost> 

    domain1正在发送domain2s内容!

    最后我改变了

     <VirtualHost domain2:80> 

     <VirtualHost *:80> 

    它的工作。

    • “IP”的虚拟主机设置运行在domain2,它具有与domain1相同的IP,甚至从来没有看我的第一个VirtualHost条目

    • 标签需要与IP [和端口]相同,才能查看ServerName和ServerAlias

    希望这有助于某人。

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.