Apache HTTP服务器是世界上最受欢迎的Web服务器。它是一个免费的,开放源代码和跨平台的HTTP服务器,具有强大的功能,可以通过各种模块进行扩展。以下说明描述了如何在CentOS 7计算机上安装和管理Apache Web服务器。
安装Apache
sudo yum install httpd
安装完成后,启用并启动Apache服务:
sudo systemctl enable httpd sudo systemctl start httpd
调整防火墙
如果您的服务器受防火墙保护,则需要打开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
验证Apache安装
现在我们已经在Apache CentOS 7服务器上安装并运行了Apache,我们可以使用以下命令检查Apache服务的状态和版本:
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 Thu 2018-04-26 07:13:07 UTC; 11s ago Docs: man:httpd(8) man:apachectl(8) Main PID: 3049 (httpd) Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec" CGroup: /system.slice/httpd.service ├─3049 /usr/sbin/httpd -DFOREGROUND ├─3050 /usr/sbin/httpd -DFOREGROUND ├─3051 /usr/sbin/httpd -DFOREGROUND ├─3052 /usr/sbin/httpd -DFOREGROUND ├─3053 /usr/sbin/httpd -DFOREGROUND └─3054 /usr/sbin/httpd -DFOREGROUND
sudo httpd -v
Server version: Apache/2.4.6 (CentOS) Server built: Oct 19 2017 20:39:16
最后,要验证一切是否正常,请http://YOUR_IP 在所选的浏览器中打开服务器IP地址 ,您将看到默认的CentOS 7 Apache欢迎页面,如下所示:
使用systemctl管理Apache服务
我们可以像其他任何systemd单元一样管理Apache服务。
要停止Apache服务,请运行:
sudo systemctl stop httpd
要重新启动,请键入:
sudo systemctl start httpd
要重新启动Apache服务:
ssudo systemctl restart httpd
在进行一些配置更改后,要重新加载Apache服务:
sudo systemctl reload httpd
如果要禁用Apache服务以在启动时启动:
sudo systemctl disable httpd
并重新启用它:
sudo systemctl enable httpd
Apache配置文件的结构和最佳实践
- 所有Apache配置文件都位于该
/etc/httpd
目录中。 - Apache的主要配置文件是
/etc/httpd/conf/httpd.conf
。 - 所有
.conf
以该/etc/httpd/conf.d
目录结尾的配置文件 都包含在主Apache配置文件中。 - 目录中包含负责加载各种Apache模块的配置文件
/etc/httpd/conf.modules.d
。 - 为了获得更好的可维护性,建议为每个域创建一个单独的配置文件(vhost)。
- 新的Apache vhost文件必须以结尾
.conf
并存储在/etc/httpd/conf.d
目录中。您可以根据需要拥有任意数量的虚拟主机。 - 遵循标准的命名约定是一个好主意,例如,如果您的域名是,
mydomain.com
那么您应该将配置文件命名为/etc/httpd/conf.d/mydomain.com.conf
- Apache日志文件(
access_log
和error_log
)位于/var/log/httpd/
目录中。建议有不同access
,并error
为每个虚拟主机的日志文件。 - 您可以将域文档的根目录设置为所需的任何位置。webroot的最常见位置包括:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
发表评论