CentOS自带Apache:全面了解与配置

简介
Apache HTTP Server,简称Apache,是一个开源的、跨平台的Web服务器软件,它是最流行的Web服务器之一,CentOS作为一个免费的企业级Linux发行版,内置了Apache HTTP Server,使得用户可以轻松地部署和管理Web服务。
Apache在CentOS中的安装
检查Apache是否已安装
在CentOS系统中,可以使用以下命令检查Apache是否已经安装:
apachectl -v
如果系统已安装Apache,将显示其版本信息。
安装Apache
如果Apache尚未安装,可以使用以下命令进行安装:
sudo yum install httpd
等待安装完成后,使用以下命令启动Apache服务:
sudo systemctl start httpd
检查Apache服务状态
可以使用以下命令检查Apache服务的状态:
sudo systemctl status httpd
如果服务正在运行,将显示为“active (running)”。
Apache基本配置

配置文件路径
Apache的配置文件位于/etc/httpd/目录下,主要配置文件包括:
httpd.conf:全局配置文件ssl.conf:SSL相关配置文件vhosts.conf:虚拟主机配置文件
启用Modular化配置
Apache使用模块化配置,可以通过编辑httpd.conf文件来启用或禁用模块,要启用SSL模块,可以找到以下行并取消注释:
LoadModule ssl_module modules/mod_ssl.so
设置默认站点
默认站点配置文件位于/etc/httpd/conf.d/目录下,如default.conf,可以编辑此文件来修改默认站点的配置,如站点文档根目录、错误日志等。
虚拟主机配置
创建虚拟主机配置文件
在/etc/httpd/conf.d/目录下创建一个新的配置文件,例如example.com.conf。
编辑虚拟主机配置文件
在配置文件中设置虚拟主机的基本信息,如域名、文档根目录、错误日志等,以下是一个简单的虚拟主机配置示例:
<VirtualHost *:80>
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
重启Apache服务
在修改配置文件后,需要重启Apache服务以使更改生效:

sudo systemctl restart httpd
Apache安全配置
设置安全文件权限
确保Apache服务运行的用户(通常是apache用户)没有对网站目录的写权限,可以使用以下命令修改目录权限:
sudo chmod 755 /var/www/example.com
限制IP访问
在httpd.conf或虚拟主机配置文件中,可以使用Allow和Deny指令来限制IP访问,只允许特定IP访问:
<Directory /var/www/example.com>
Order allow,deny
Allow from 192.168.1.100
Deny from all
</Directory>
FAQs
-
问题:如何查看Apache的版本信息?
解答: 使用以下命令可以查看Apache的版本信息:
apachectl -v
-
问题:如何重启Apache服务?
解答: 使用以下命令可以重启Apache服务:
sudo systemctl restart httpd