我的 Web 服务器的当前设置是 1GB 纳米节点,使用 Fedora37 作为计算实例的发行版。对于 Web 服务器,我使用的是 Httpd(Apache 2.4.54),现在正在配置虚拟主机。我已阅读了 Linode 和其他网站上的几份不同的指南。其中一些指南建议在和中配置虚拟主机,而
/etc/httpd/sites-available/example.com.conf
另 一些指南建议将所有非标准配置文件放入虚拟主机中/etc/httpd/sites-enabled/example.com.conf
/etc/httpd/conf.d/
/etc/httpd/conf.d/vhost.conf
我在服务器故障处找到了有关此主题的另一个对话sites-available、sites-enabled 和 conf.d 目录(Nginx)之间有区别吗?。但是,这与我没有使用的 nginx 有关,并且没有明确的答案。此外,这个问题是 9 年前提出的,所以我想知道从那时起是否有什么变化。
我最初按照 Linode 上的指南在 sites-available 和 sites-enabled 中设置了虚拟主机:https://www.linode.com/docs/guides/how-to-install-apache-web-server-centos-8/#configure-virtual-hosting 它适用于 CentOS,但步骤应该与 Fedora 大致兼容。
然而,后来我遇到了这个指南:https://www.linode.com/docs/guides/lamp-server-on-fedora-20/它使用 vhost.conf 方法。该指南用于在 Fedora 上设置 LAMP 服务器,这也是我想要做的。
我的问题是,我应该将虚拟主机的配置文件放在哪里?在这种情况下,“最佳实践”是什么?我需要在两个地方设置配置吗?如果我想设置 LAMP 服务器,我必须使用 vhost.conf 方法吗?这些方法可以互换吗?
如果回答该问题需要更多信息,请告诉我。感谢您的时间和耐心 - catbyte
答案1
在问这个问题之前,我做了很多研究,我确信我无法弄清楚,但我相信我做到了。感谢这篇关于启用和禁用网站的指南,https://www.linode.com/docs/guides/how-to-enable-disable-website/,整个过程变得更加清晰。
这可能取决于你问谁,但看起来没有一种方法比另一种更有效或更正确,并且任何一种方法都可以用于任何发行版。我能看到两者之间最大的区别在于网站禁用和启用的方式。
/etc/httpd/sites-available/example.com.conf
和中的虚拟主机方法/etc/httpd/sites-enabled/example.com.conf
通常由 Debian 和 Ubuntu 发行版使用,但如果已配置,其他发行版也可以使用。/etc/httpd/sites-enabled/
必须从目录到 中的 vhost 文件建立符号链接才能/etc/httpd/sites-available/
启用网站。正在使用的 vhost 文件/etc/httpd/sites-available/example.com.conf
虚拟托管方法/etc/httpd/conf.d/vhost.conf
也可以由任何发行版使用。要禁用 Apache 服务器上的网站,您可以进入文件并在配置中的每一行前面添加 #,使其不处于活动状态。或者,如果您能够使用 a2ensite 和 a2dissite 工具,请使用a2ensite example.com
启用网站并a2dissite example.com
禁用。
还有其他变化。我刚刚看到一个指南,指导您配置虚拟主机/etc/httpd/vhost.d/example.com.conf
在我看来,您只需要选择一种方法,而不必在两个地方设置配置。