在CentOS上安装和配置Apache HTTP Server(通常简称为Apache)是一个常见的任务,用于提供网页服务。以下是一些建议和步骤,以确保Apache在CentOS上顺利运行并保持安全和高效:
更新系统: 在安装Apache之前,确保你的CentOS系统已经更新到最新版本。
sudo yum update -y
安装Apache: 使用yum包管理器安装Apache。
sudo yum install httpd -y
启动和启用Apache: 安装完成后,启动Apache并设置为开机自启动。
sudo systemctl start httpd
sudo systemctl enable httpd
修改主配置文件:
编辑主配置文件/etc/httpd/conf/httpd.conf
,可以修改常用的配置项,如监听端口、虚拟主机、文档根目录等。
sudo vi /etc/httpd/conf/httpd.conf
创建虚拟主机: 虚拟主机功能可以让同一台服务器运行多个不同的网站。创建虚拟主机的配置示例如下:
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /var/www/example.com
ErrorLog /var/log/httpd/example.com-error_log
CustomLog /var/log/httpd/example.com-access_log combined
</VirtualHost>
配置防火墙规则: 如果系统使用防火墙,需要允许HTTP(端口80)和HTTPS(端口443)流量通过。
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
启用SSL: 为网站启用SSL加密,可以使用Let’s Encrypt免费获取SSL证书。
sudo yum install certbot python2-certbot-apache -y
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
关闭不必要的模块: 在编译安装Apache时,可以选择不安装不必要的模块以减少攻击面。
./configure --prefix=/usr/local/apache2 --enable-so --enable-deflate --enable-expires --enable-headers --enable-modules=most --with-mpm=prefork --with-pcre --with-included-apr
设置SELinux安全上下文: 确保网站数据目录的SELinux安全上下文正确设置。
sudo semanage fcontext -a -t httpd_sys_content_t /var/www/html
sudo restorecon -Rv /var/www/html
启用个人用户主页功能: 允许用户在自己的家目录中创建网站数据目录。
sudo vi /etc/httpd/conf.d/userdir.conf
# 将以下行注释掉或取消注释
# #UserDir disabled
# UserDir public_html
sudo systemctl restart httpd
监控和日志: 定期检查Apache的错误日志文件,以获取更多信息。
sudo tail -f /var/log/httpd/error_log
在浏览器中输入服务器的IP地址或域名,如果能够看到Apache的默认页面,则说明安装成功了。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:apache2在centos上怎么配置