如何在RHEL 9中设置Apache虚拟主机

如何在RHEL 9中设置Apache虚拟主机

在网站托管中,虚拟主机允许单台服务器托管多个域名。Apache 是最广泛使用的Web服务器之一,提供了强大的虚拟主机功能。

在 RHEL 9 及基于 RHEL 的发行版(如 Fedora、Rocky Linux 和 AlmaLinux)上,设置和管理虚拟主机非常简单,尤其是启用/禁用选项,使得控制站点是否激活变得更加方便。

本文将介绍如何:

在 RHEL 9 上安装并配置 Apache。

为 example1.com 和 example2.com 创建虚拟主机。

根据需要启用或禁用虚拟主机。

步骤 1:安装 Apache Web 服务器

如果服务器上尚未安装 Apache,请使用以下命令安装:

sudo dnf install httpd -y

安装后,启动并允许Apache在系统启动时运行:

sudo systemctl start httpd
sudo systemctl enable httpd

第 2 步:配置 Apache 虚拟主机

为了保持井然有序,请创建目录来存储每个域的网站文件。Apache 通常将其用作/var/www/网站文件的默认位置。

sudo mkdir -p /var/www/example1.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

为这些目录设置正确的所有权和权限:

sudo chown -R USER:USER /var/www/example1.com/public_html
sudo chown -R USER:USER /var/www/example2.com/public_html
sudo chmod -R 755 /var/www

为每个域创建一个简单的 HTML 文件来验证设置是否正常工作:

echo "<html><h1>欢迎来到 Example1.com</h1></html>" | sudo tee /var/www/example1.com/public_html/index.html
echo "<html><h1>欢迎来到 Example2.com</h1></html>" | sudo tee /var/www/example2.com/public_html/index.html

步骤3:创建虚拟主机配置文件

Apache 默认查找虚拟主机配置/etc/httpd/conf.d/,每个域都需要自己的配置文件。

创建虚拟主机文件example1.com:

sudo nano /etc/httpd/conf.d/example1.com.conf

添加以下配置:

<VirtualHost *:80>
ServerAdmin admin@example1.com
ServerName example1.com
ServerAlias www.example1.com
DocumentRoot /var/www/example1.com/public_html
ErrorLog /var/www/example1.com/error.log
CustomLog /var/www/example1.com/access.log combined
</VirtualHost>

创建虚拟主机文件example2.com:

sudo nano /etc/httpd/conf.d/example2.com.conf

添加以下配置:

<VirtualHost *:80>
ServerAdmin admin@example2.com
ServerName example2.com
ServerAlias www.example2.com
DocumentRoot /var/www/example2.com/public_html
ErrorLog /var/www/example2.com/error.log
CustomLog /var/www/example2.com/access.log combined
</VirtualHost>

如果您启用了防火墙,请确保允许HTTP流量:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload

步骤4:启用和禁用虚拟主机

在RHEL上,您可以通过启用或禁用配置文件来管理虚拟主机。

启用虚拟主机

只需确保配置文件存在/etc/httpd/conf.d/ 并重新启动Apache:

sudo systemctl restart httpd

example1.com和example2.com现在均处于活动状态。

禁用虚拟主机

如果要暂时禁用虚拟主机,您可以重命名配置文件或将其移出/etc/httpd/conf.d/。

例如,禁用example2.com:

sudo mv /etc/httpd/conf.d/example2.com.conf /etc/httpd/conf.d/disabled_example2.com.conf

重新启动 Apache 以应用更改:

sudo systemctl restart httpd

要重新启用它,请将其移回原始位置:

sudo mv /etc/httpd/conf.d/disabled_example2.com.conf /etc/httpd/conf.d/example2.com.conf
sudo systemctl restart httpd

第 5 步:测试 Apache 虚拟主机
如果在本地测试,请将以下条目添加到/etc/hosts文件中:

127.0.0.1 example1.com
127.0.0.1 example2.com

打开 Web 浏览器并转到http://example1.com和http://example2.com。您应该会看到相应的欢迎消息。

如何在RHEL 9中设置Apache虚拟主机

您已成功在RHEL 9上为两个域和创建了Apache 虚拟主机,并可以根据需要启用或禁用每个主机。example1.comexample2.com,这个设置允许您的服务器独立管理多个网站,并让您控制哪些域处于活动状态。

未经允许不得转载:A5数据 » 如何在RHEL 9中设置Apache虚拟主机

相关文章

contact