CentOS 作为一款稳定可靠的 Linux 发行版,常被用于搭建 Web 服务器,本文将详细介绍在 CentOS 系统中安装和配置 Web 站点的完整流程,从环境准备到服务部署,帮助用户快速上手。

系统准备与更新
在开始安装 Web 服务前,确保系统处于最新状态,并关闭防火墙和 SELinux(简化配置,生产环境需谨慎处理),首先更新系统包:
sudo yum update -y
随后关闭防火墙:
sudo systemctl stop firewalld sudo systemctl disable firewalld
临时关闭 SELinux:
sudo setenforce 0
若需长期关闭,可编辑 /etc/selinux/config 文件,将 SELINUX=enforcing 改为 SELINUX=disabled 后重启系统。
安装 Web 服务器
CentOS 常用的 Web 服务器包括 Apache 和 Nginx,这里以 Nginx 为例,介绍安装步骤,首先添加 EPEL 仓库(扩展软件包):
sudo yum install epel-release -y
然后安装 Nginx:
sudo yum install nginx -y
安装完成后启动 Nginx 并设置开机自启:
sudo systemctl start nginx sudo systemctl enable nginx
通过浏览器访问服务器 IP 地址,若看到 Nginx 欢迎页面,说明安装成功。
配置虚拟主机
虚拟主机允许在一台服务器上托管多个网站,以创建 example.com 为例,首先创建网站目录:
sudo mkdir -p /var/www/example.com
设置目录权限:

sudo chown -R nginx:nginx /var/www/example.com sudo chmod -R 755 /var/www/example.com
创建测试页面:
echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/index.html
接下来配置 Nginx 虚拟主机,编辑 /etc/nginx/conf.d/example.com.conf 文件,添加以下内容:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
保存后检查 Nginx 配置语法并重启服务:
sudo nginx -t sudo systemctl reload nginx
安装数据库(以 MySQL 为例)
大多数 Web 应用需要数据库支持,这里以安装 MySQL 8.0 为例,首先添加 MySQL 官方仓库:
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm -y
安装 MySQL 服务器:
sudo yum install mysql-community-server -y
启动 MySQL 并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
首次启动后,需获取临时密码并完成安全配置:
sudo grep 'temporary password' /var/log/mysqld.log sudo mysql_secure_installation
根据提示设置 root 密码并移除匿名用户等。
安装 PHP(可选)
若网站使用 PHP(如 WordPress),需安装 PHP 及相关扩展,以 PHP 7.4 为例:
sudo yum install php php-fpm php-mysql php-gd php-mbstring -y
启动 PHP-FPM 并设置开机自启:

sudo systemctl start php-fpm sudo systemctl enable php-fpm
修改 Nginx 配置以支持 PHP,在虚拟主机配置中添加:
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
重启 Nginx 使配置生效。
部署 Web 应用
以 WordPress 为例,下载并解压到网站目录:
cd /var/www/example.com sudo wget https://wordpress.org/latest.tar.gz sudo tar -xzvf latest.tar.gz sudo mv wordpress/* . sudo rm -rf wordpress latest.tar.gz
设置目录权限并访问网站,完成 WordPress 安装向导。
配置 HTTPS(可选)
为网站启用 HTTPS 可提升安全性,使用 Certbot 申请免费 Let's Encrypt 证书:
sudo yum install certbot python3-certbot-nginx -y sudo certbot --nginx -d example.com -d www.example.com
根据提示配置自动续期。
监控与维护
定期备份数据库和网站文件,监控系统资源,可使用 crontab 设置定时任务:
0 2 * * * /usr/bin/mysqldump -u root -p[password] database_name > /backup/$(date +\%Y\%m\%d).sql
FAQs
Q1:如何查看 Nginx 的错误日志?
A1:Nginx 错误日志默认位于 /var/log/nginx/error.log,可通过命令 sudo tail -f /var/log/nginx/error.log 实时查看。
Q2:如何重置 MySQL root 密码?
A2:停止 MySQL 服务(sudo systemctl stop mysqld``),跳过权限表启动(sudo mysqld_safe --skip-grant-tables &),登录后执行FLUSH PRIVILEGES;`,再修改密码,最后重启服务。