在 CentOS 8 上安装 Apache

Apache HTTP 服务器是世界上使用最广泛的 Web 服务器。它是一个免费的,开放源代码和跨平台的 HTTP 服务器,具有强大的功能,并且可以通过各种模块进行扩展。

在本文中,我们将解释如何在 CentOS 8 上安装和管理 Apache Web 服务器。

安装 Apache

Apache 在默认的 CentOS 存储库中可用,并且安装非常简单。

在基于 RHEL 的发行版中, Apache 包和服务称为 httpd 。要安装 Apache,请以 root 或具有 sudo 特权的用户身份运行以下命令:

sudo yum install httpd

安装完成后,启用并启动 Apache 服务:

sudo systemctl enable httpd
sudo systemctl start httpd

要验证服务是否正在运行,请检查其状态:

sudo systemctl status httpd

输出应如下所示:

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2019-10-12 15:54:58 UTC; 6s ago
  ...

调整防火墙

FirewallD 是 Centos 8 上的默认防火墙解决方案。

在安装过程中, Apache 使用预定义的规则创建防火墙服务文件,以允许访问 HTTP(80) 和 HTTPS(443) 端口。

以下命令将永久打开必要的端口:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

管理 Apache

本部分说明 Apache 配置文件的结构以及管理 Apache Web 服务器的最佳实践。

  • 所有 Apache 配置文件都位于该 /etc/httpd 目录中。
  • Apache 的主要配置文件是 /etc/httpd/conf/httpd.conf
  • /etc/httpd/conf.d 目录中以 .conf 结尾的配置文件都会包含在主 Apache 配置文件中。
  • 目录 /etc/httpd/conf.modules.d 中包含负责加载各种 Apache 模块的配置文件。
  • Apache vhost 文件必须以 .conf 并且结尾并存储在 /etc/httpd/conf.d 目录中。您可以根据需要拥有任意数量的虚拟主机。为每个域创建单独的配置文件 (vhost) 使服务器易于维护。
  • 遵循标准的命名约定是一个好习惯。例如,如果域名是 mydomain.com, 则配置文件应命名为 mydomain.com.conf
  • Apache日志文件(access_logerror_log) 位于 /var/log/httpd/ 目录中。建议有不同 accesserror 日志文件为每个虚拟主机。
  • 您可以将域文档的根目录设置为所需的任何位置。 webroot 的最常见位置包括:
    • /home/<user_name>/<site_name>
    • /var/www/<site_name>
    • /var/www/html/<site_name>
    • /opt/<site_name>

结论

恭喜,您已经在 CentOS 8 服务器上成功安装了 Apache 。现在,您准备开始部署应用程序并将 Apache 用作 Web 或代理服务器。

您可以通过与其他任何 systemd 单元相同的方式来管理 Apache 服务