Apache服务器部署是企业级Web服务架设的基础环节,其稳定性和灵活性使其成为全球范围内应用最广泛的Web服务器软件之一,本文将从环境准备、核心配置、安全加固及性能优化四个维度,系统介绍Apache服务器的完整部署流程。

环境准备与基础安装
在开始部署前,需确保服务器操作系统满足Apache的运行要求,以CentOS 7为例,首先更新系统软件包:
sudo yum update -y
随后安装Apache服务:
sudo yum install httpd -y
安装完成后,启动服务并设置开机自启:
sudo systemctl start httpd sudo systemctl enable httpd
通过浏览器访问服务器公网IP,若显示”Apache2 Test Page”则表示基础安装成功。
关键目录说明:
- 配置文件目录:
/etc/httpd/conf/(主配置文件httpd.conf) - 网站根目录:
/var/www/html/ - 日志文件目录:
/var/log/httpd/(访问日志access_log、错误日志error_log)
核心配置与虚拟主机设置
Apache的核心配置通过httpd.conf实现,而虚拟主机配置允许单台服务器托管多个网站。
主配置文件优化
编辑/etc/httpd/conf/httpd.conf,调整关键参数:
ServerTokens Prod:隐藏服务器版本信息,提升安全性KeepAlive On:启用持久连接,减少TCP握手开销MaxKeepAliveRequests 100:单连接最大请求数Timeout 30:连接超时时间(秒)
基于名称的虚拟主机配置
假设需部署两个网站(www.example1.com和www.example2.com),步骤如下:

(1)创建网站目录
sudo mkdir -p /var/www/example1 sudo mkdir -p /var/www/example2 echo "Example1 Site" > /var/www/example1/index.html echo "Example2 Site" > /var/www/example2/index.html
(2)配置虚拟主机文件
在/etc/httpd/conf.d/目录下创建virtualhosts.conf如下:
<VirtualHost *:80>
ServerName www.example1.com
DocumentRoot /var/www/example1
ErrorLog /var/log/httpd/example1_error.log
CustomLog /var/log/httpd/example1_access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName www.example2.com
DocumentRoot /var/www/example2
ErrorLog /var/log/httpd/example2_error.log
CustomLog /var/log/httpd/example2_access.log combined
</VirtualHost>(3)配置DNS解析
确保域名解析到服务器IP地址,完成后重启Apache服务:
sudo systemctl restart httpd
虚拟主机配置参数说明:
| 参数 | 作用 | 示例 |
|——|——|——|
| ServerName | 网站域名 | www.example1.com |
| DocumentRoot | 网站根目录 | /var/www/example1 |
| ErrorLog | 错误日志路径 | /var/log/httpd/example1_error.log |
| CustomLog | 访问日志格式 | combined(记录客户端信息、请求状态等) |
安全加固措施
安全是服务器部署的重中之重,需从访问控制、证书加密、漏洞防护三方面加固。
基于IP的访问控制
通过Require指令限制特定IP访问,例如仅允许192.168.1.0/24网段访问:
<Directory /var/www/example1>
Require ip 192.168.1.0/24
Require all denied
</Directory>配置HTTPS(SSL证书)
使用Let’s Encrypt免费证书,首先安装certbot:
sudo yum install certbot python3-certbot-apache -y
执行证书申请:

sudo certbot --apache -d www.example1.com
根据提示选择重定向HTTP到HTTPS,certbot将自动修改虚拟主机配置,启用SSL模块。
漏洞防护
- 禁用目录列表:在
httpd.conf中设置Options -Indexes,防止目录内容被浏览 - 隐藏敏感文件:通过
.htaccess文件禁止访问配置文件(如<Files ".*"> Require all denied </Files>) - 定期更新:执行
sudo yum update httpd及时修复安全漏洞
性能优化与监控
启用缓存模块
安装mod_cache和mod_disk_cache模块,配置磁盘缓存:
LoadModule cache_module modules/mod_cache.so
LoadModule disk_cache_module modules/mod_disk_cache.so
<IfModule mod_disk_cache.c>
CacheRoot "/var/cache/apache2"
CacheEnable disk /
CacheMaxFileSize 1048576
CacheMinFileSize 1024
</IfModule>配置工作进程
根据服务器CPU核心数调整mpm_prefork模块参数:
<IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 150
MaxConnectionsPerChild 1000
</IfModule>日志监控与分析
使用logrotate工具自动切割日志,防止日志文件过大:
编辑/etc/logrotate.d/httpd,确保配置包含:
/var/log/httpd/*log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 644 root root
}通过以上步骤,可完成Apache服务器的安全、高效部署,实际运维中,需结合业务需求持续优化配置,并定期检查日志文件,及时发现并解决问题,确保服务稳定运行。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/25033.html
