Apache HTTP服务器是世界上使用最广泛的Web服务器。 它是一个免费的,开源的,跨平台的HTTP服务器,具有强大的功能,并且可以通过多种模块进行扩展。
在所有可用的Web服务器中,Apache Web Server可能是最受欢迎的服务器之一。由Apache基金会开发的Apache非常流行,它可以在线运行所有Web服务器的70%。
这是每个系统管理员都应该知道的可靠,安全的Web服务器。Apache是LAMP堆栈的一部分,代表Linux,Apache,MariaDB和PHP,并且在许多公司中通常用于托管内部和外部网站。
在本文中,我们将说明如何在CentOS 8上安装和管理Apache网络服务器,轻松配置虚拟主机。
必要条件确保您的防火墙在CentOS 8实例上正确运行。请以root或具有sudo特权的用户身份运行命令。
[linuxidc@localhost ]$ sudo systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since 一 2019-11-18 00:08:12 EST; 6min ago
Docs: man:firewalld(1)
Main PID: 960 (firewalld)
CGroup: /system.slice/firewalld.service
└─960 /usr/bin/Python -Es /usr/sbin/firewalld --nofork --nopid
11月 18 00:08:11 localhost.localdomain systemd[1]: Starting firewalld - dyna...
11月 18 00:08:12 localhost.localdomain systemd[1]: Started firewalld - dynam...
Hint: Some lines were ellipsized, use -l to show in full.
Apache在默认的CentOS存储库中可用,并且安装非常简单。为了安装Apache Web Server,首先通过运行以下命令更新本地软件包
在基于RHEL的发行版中,Apache软件包和服务称为httpd。 要安装Apache,运行以下命令:
[linuxidc@localhost ]$ sudo yum update
更新完成后,就可以安装Apache了。
[root@localhost ]# yum install httpd
启动Apache Web服务器为了启动您的Apache Web服务器,请运行以下命令
[root@localhost ]# systemctl start httpd
确保启用您的httpd服务,以使其在系统启动时启动。
[root@localhost ]# systemctl enable httpd
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
最后,通过运行一个简单的status命令,确保您的Apache Web服务器正常运行。
[root@localhost ]# systemctl status httpd
您还可以检查Web服务器的版本,以确保已正确安装。
[root@localhost ]# httpd -v
Server version: Apache/2.4.37 (centos)
Server built: Oct 7 2019 21:42:02
为了测试Apache Web服务器是否正常运行,您首先需要找到您的当前IP地址。
要获取您的IP地址,请运行以下命令
[root@localhost ]# hostname -I | awk '{print $1}'
192.168.229.165
默认情况下,Apache将在服务器上的端口80上运行。
为了检查Apache是否正常运行,可以运行简单的curl命令,也可以使用Web浏览器进行检查。
$ curl <ip_address>:80
如果您浏览到前面讨论过的正确URL,则这是默认页面。
这只是一个标准的演示页面,上面有一些基本说明。 如果您不熟悉Web服务器管理,则可以阅读此页面上提供的段落。
为 Apache 配置你的CentOS 8防火墙为了使外部主机可以使用Web服务器,您将需要在防火墙上打开特定的端口。
默认情况下,CentOS使用firewalld,它是在主机上作为守护程序运行的防火墙,并为其提供基本安全性。
为了接受HTTP和HTTPS连接,您将打开服务器上的端口80和443。
$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https
$ sudo firewall-cmd --reload
通过运行以下命令,确保服务已正确授权
$ sudo firewall-cmd --list-all | grep services
services : cockpit dhcpv6-client http https ssh
恭喜你!
您已在CentOS 8上成功安装了Apache。
您的服务器现在正在接受对Web服务器的传入HTTP请求。
在CentOS 8上管理Apache Web服务器为了管理您的Apache Web服务器,您有多种选择。
为了在CentOS 8上重新启动Apache,请输入以下命令
sudo systemctl restart httpd
为了停止Web服务器,请运行以下命令
$ sudo systemctl stop httpd
如果要重新启动,可以运行
$ sudo systemctl start httpd
如果对Apache配置进行了一些修改,则可以重新加载服务器,而不必完全重新启动服务器。
如果您修改了一个网站,它将重新启动其他未修改的网站,这显然是我们要避免的事情。
$ sudo systemctl reload httpd
如果您希望您的Web服务器在启动时启动(如果您更新服务器而忘记重新启动Web服务器,建议您这样做),则必须运行
$ sudo systemctl enable httpd
另一方面,如果要阻止Web服务器在系统启动时启动,请运行
$ sudo systemctl disable httpd
为Apache Web服务器创建虚拟主机在Apache上创建虚拟主机非常有用。