Apache - 虚拟主机(多个域名)

Apache - 虚拟主机(多个域名)

我目前有几个子域和一个主域。

我的子域名设置为指向 VPS 服务器的“A 记录”。但是,我尝试过创建单独的虚拟主机,但当我访问所有子域名时,它们都链接到一个目录,即主目录。

如何让每个子域名指向我的 VPS 上的正确目录?我尝试过虚拟主机,但问题仍然存在。

这是我的尝试:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/html/hub/
    ServerName www.hub.cxw.org
    ErrorLog logs/dummy-hub.cxw.org-error_log
    CustomLog logs/dummy-hub.cxw.org-access_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/html/cxw/
    ServerName www.cxw.org
    ErrorLog logs/dummy-cxw.org-error_log
    CustomLog logs/dummy-cxw.org-access_log common
</VirtualHost>

请帮助。

答案1

删除末尾的斜杠DocumentRoot。mod_dir 中似乎有一个错误,当 DocumentRoot 末尾有斜杠时(例如,“DocumentRoot /usr/web/”)会导致问题,因此请避免这种情况。

此外,您似乎将主目录作为虚拟主机的父目录。这不是一个非常有效的设置,因为人们可以转到您的主站点,然后向下导航到您的子域,这通常不是您想要的。我这样说是因为您<Directory>的虚拟主机中没有任何指令。

答案2

NameVirtualHost *:80是否在 apache 配置中的某处启用了该指令?此外,您需要重新启动 apache 才能使这些更改生效。

相关内容