如何使用 000-default.conf 文件配置多个域

如何使用 000-default.conf 文件配置多个域

我正在尝试配置我的 Apache 以“回答”多个域。

例子:

www.site1.com -> /var/www/site1.com/

www.siteX.com -> /var/www/siteX.com/

www.bibibi.com -> /var/www/bibibi.com/

我可以使用单个 000-default.conf(带有多个声明)吗?还是需要使用不同的 .conf 文件并使用 a2ensite 启用?

谢谢

答案1

从技术上来说,只要 Apache httpd 接受您的配置有效,您就可以做任何您想做的事情。

从专业角度来说:遵循发行版建立的惯例。这将确保其他工具(例如 certbot/letsencrypt)的行为可预测,并保护您和他人的理智。

答案2

您所说的“多个”域名是什么意思?您想要多个不同的网站还是虚拟主机?或者您希望一个虚拟主机处理您的所有域名?

如果后者只需针对该虚拟主机正确调整您的ServerName、和选项。ServerAlias

<VirtualHost *:80>
    ServerName primarydomain.example.info
    ServerAlias example.com example.org example.gov
</VirtualHost>

答案3

您可以在单个文件中配置多个虚拟主机,但这是一种不好的做法。

诀窍是你需要了解文件结构的工作原理

  1. a2ensite此命令仅创建一个符号链接/etc/apache2/sites-enabled 以启用新站点(新站点的.conf 文件应该位于里面/etc/apache2/sites-available)。
  2. 当您使用多个虚拟主机时,最好在里面创建多个文件/etc/apache2/sites-available。这样您就可以禁用单个站点,删除符号链接,在/etc/apache2/sites-enabled不删除配置文件的情况下找到它。

相关内容