在CentOS上搭建HTTP服务器是一个常见的任务,特别是在开发和生产环境中,本文将详细介绍如何在CentOS 7系统上搭建一个功能齐全的HTTP服务器,包括安装apache HTTP Server、配置静态IP、设置防火墙、安装PHP和MySQL、配置虚拟主机以及进行安全优化等步骤,以下是具体步骤:
一、安装VMware和CentOS 7
1、安装VMware:首先需要在宿主机上安装VMware Workstation或类似的虚拟机软件。

2、下载并安装CentOS 7 ISO:从CentOS官网下载ISO文件,并在VMware中创建新的虚拟机,选择CentOS 7 ISO作为安装源,按照向导完成安装,分配至少4GB内存和20GB磁盘空间。
二、配置静态IP地址
编辑虚拟网络编辑器,将网络模式设置为NET模式,并配置子网IP,将子网IP设置为192.168.171.0,网关为192.168.171.2,DNS为192.168.171.2。
然后编辑网卡配置文件/etc/sysconfig/networkscripts/ifcfgens33
,添加以下内容:
- BOOTPROTO=static
- ONBOOT=yes
- IPADDR=192.168.171.101
- NETMASK=255.255.255.0
- GATEWAY=192.168.171.2
- DNS1=192.168.171.2
保存后重启网络服务或系统:
- systemctl restart network.service
- 或者
- reboot
使用ping www.baidu.com
测试网络连接是否正常。
三、安装Apache HTTP Server

1、更新系统包:
- sudo yum update y
2、安装Apache:
- sudo yum install httpd y
3、启动并启用Apache服务:
- sudo systemctl start httpd
- sudo systemctl enable httpd
4、查看Apache服务状态:
- sudo systemctl status httpd
四、配置防火墙
1、查看防火墙状态:
- systemctl status firewalld
2、开启防火墙服务(如果未运行):

- sudo systemctl start firewalld
3、开放HTTP和HTTPS端口:
- sudo firewallcmd permanent addservice=http
- sudo firewallcmd permanent addservice=https
- sudo firewallcmd reload
五、测试Apache服务器
在浏览器中输入服务器的IP地址(如http://192.168.171.101),如果出现默认的Apache测试页面,说明安装成功。
六、安装PHP和MySQL
1、安装PHP:
- sudo yum install php y
2、安装MySQL:
- sudo yum install mysqlserver y
3、启动并启用MySQL服务:
- sudo systemctl start mysqld
- sudo systemctl enable mysqld
4、为root用户设置密码:
- sudo mysql_secure_installation
七、配置虚拟主机
1、创建虚拟主机配置文件:
- sudo nano /etc/httpd/conf.d/yourdomain.com.conf
添加以下内容:
- <VirtualHost *:80>
- ServerAdmin webmaster@yourdomain.com
- DocumentRoot /var/www/html/yourdomain.com/public_html
- ServerName yourdomain.com
- ServerAlias www.yourdomain.com
- ErrorLog /var/www/html/yourdomain.com/error.log
- CustomLog /var/www/html/yourdomain.com/requests.log combined
- </VirtualHost>
2、创建网站根目录并设置权限:
- sudo mkdir p /var/www/html/yourdomain.com/public_html
- sudo chown R $USER:$USER /var/www/html/yourdomain.com/public_html
- sudo chmod R 755 /var/www/html/yourdomain.com/public_html
3、重启Apache服务:
- sudo systemctl restart httpd
八、SSL配置(可选)
为了提高安全性,可以配置SSL证书,可以使用Let's Encrypt免费获取和自动配置SSL证书。
1、安装Certbot:
- sudo yum install epelrelease y
- sudo yum install certbot python2certbotapache y
2、生成和安装证书:
- sudo certbot apache
按照提示输入域名和电子邮件地址,Certbot会自动为你的Apache配置SSL证书。
九、优化和安全性设置
1、调整Apache性能参数:
编辑/etc/httpd/conf/httpd.conf
,增加或修改以下参数:
- KeepAlive On
- MaxKeepAliveRequests 100
- KeepAliveTimeout 5
2、禁用不必要的模块:
在/etc/httpd/conf/httpd.conf
中注释掉以下模块:
- # LoadModule status_module modules/mod_status.so
- # LoadModule autoindex_module modules/mod_autoindex.so
十、备份和恢复
1、备份Web目录和数据库:
- sudo tar cvzf /backup/yourdomain.com.tar.gz /var/www/html/yourdomain.com
- sudo mysqldump u root p yourdatabase > /backup/yourdatabase.sql
2、恢复备份:
- sudo tar xvzf /backup/yourdomain.com.tar.gz C /var/www/html/
- sudo mysql u root p yourdatabase < /backup/yourdatabase.sql
十一、监控和维护
1、监控工具:可以使用Nagios或Munin等工具监控服务器性能。
2、日常维护:定期更新系统和软件包,检查日志文件。
- sudo yum update y
- sudo tail f /var/log/httpd/access_log
- sudo tail f /var/log/httpd/error_log
通过以上步骤,您可以在CentOS 7上成功搭建一个功能齐全且安全的HTTP服务器,如果在实际操作中遇到问题,可以参考相关文档或社区资源寻求帮助。