我有两个指向同一个网络服务器的域(siteA.com 和 SiteB.com),我想为每个域显示不同的网页。
到目前为止我采取的步骤是:
将默认站点 (siteA) 复制到 siteB
1) sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/siteB
2)sudo vim /etc/apache2/sites-available/siteB
<VirtualHost *:80>
ServerAdmin [email protected]
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 下创建并在其中创建了一个示例 index.html。
但是,当我加载我的域时,siteB.com
我仍然会被定向到/var/www/siteA
. 这是为什么?
我是否也必须重命名/etc/apache2/sites-available/default
为/etc/apache2/sites-available/siteA
?
更新:
多亏了下面的答案,我似乎忘记了启用该站点旁边的另一个条目:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName siteB.com
ServerAlias www.siteB.com
</VirtualHost *:80>
为了也包含所有子域,请执行以下操作:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName siteB.com
ServerAlias *.siteB.com
</VirtualHost *:80>
siteA 也是如此。
您是否使用命令a2ensite siteB启用了 siteB然后重新启动了网络服务器?
我已经为虚拟主机问题苦苦挣扎了好几天......可能相关:这是我所拥有的:
域 1 正在发送域 2 的内容!
最后我改变了
至
它奏效了。
基于“IP”的虚拟主机设置在 domain2 上运行,它与 domain1 具有相同的 IP,甚至从未查看我的第一个 VirtualHost 条目
标签需要相同的 IP [和端口] 才能查看 ServerName 和 ServerAlias
希望这对某人有帮助。