在 CentOS 系统的轻量应用服务器上部署 WordPress,推荐使用 宝塔面板(Baota Panel) 或 LNMP/LAMP 手动部署。以下提供两种主流方案,推荐优先使用宝塔面板(适合新手),再附手动部署步骤供参考。
✅ 方案一:使用宝塔面板(推荐,图形化操作)
1. 安装宝塔面板
# 执行官方安装脚本(以 CentOS 7/8 为例)
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
⚠️ 注意:
- 首次运行会提示设置面板用户名、密码和端口(建议修改默认 8888 为其他端口防扫描)。
- 安装完成后,根据终端提示登录面板地址:
http://你的服务器IP:端口
2. 在宝塔中一键安装 WordPress
- 登录宝塔面板 → 左侧菜单点击 【网站】 → 点击 【添加站点】。
- 域名:填写你的域名(如
example.com,若未绑定可先填 IP) - PHP 版本:选择 7.4 或 8.1(WordPress 兼容性好)
- 数据库:勾选“创建 MySQL 数据库”,设置名称、用户、密码(记录好!)
- 根目录:自动生成
/www/wwwroot/example.com
- 域名:填写你的域名(如
- 点击【提交】后,进入 【软件商店】 → 搜索 “WordPress” → 点击 【安装】
- 选择刚才创建的数据库
- 设置站点标题、管理员账号密码等
- 点击【开始安装】→ 等待完成
✅ 安装成功后,访问 http://你的域名 即可看到 WordPress 首页。
3. 安全加固建议(必做)
- 修改默认登录路径:安装插件 WPS Hide Login
- 启用 HTTPS:在宝塔【SSL】标签页申请免费 Let’s Encrypt 证书并强制跳转
- 关闭多余服务:如 FTP、SSH 非必需则禁用
- 定期备份:使用宝塔【备份】功能或插件 UpdraftPlus
🔧 方案二:手动 LNMP 部署(适合进阶用户)
1. 安装环境(Nginx + MySQL + PHP)
# 更新系统
sudo yum update -y
# 安装 EPEL 源(部分包需要)
sudo yum install -y epel-release
# 安装 Nginx
sudo yum install -y nginx
sudo systemctl enable nginx && sudo systemctl start nginx
# 安装 MariaDB(MySQL 替代)
sudo yum install -y mariadb-server mariadb
sudo systemctl enable mariadb && sudo systemctl start mariadb
sudo mysql_secure_installation # 按提示设置 root 密码、删除匿名用户等
# 安装 PHP-FPM 及扩展
sudo yum install -y php php-fpm php-mysqlnd php-gd php-json php-curl php-mbstring php-intl php-fileinfo
sudo systemctl enable php-fpm && sudo systemctl start php-fpm
2. 配置 Nginx 虚拟主机
sudo vi /etc/nginx/conf.d/yourdomain.conf
填入以下内容(替换 yourdomain.com 和 path/to/wordpress):
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /path/to/wordpress;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
}
location ~* .(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
测试并重启 Nginx:
sudo nginx -t && sudo systemctl reload nginx
3. 下载并配置 WordPress
# 创建目录并下载
sudo mkdir -p /path/to/wordpress
cd /path/to/wordpress
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzf latest.tar.gz --strip-components=1
sudo rm latest.tar.gz
# 设置权限(关键!)
sudo chown -R nginx:nginx .
sudo find . -type d -exec chmod 755 {} ;
sudo find . -type f -exec chmod 644 {} ;
# 创建 wp-config.php
cp wp-config-sample.php wp-config.php
sudo nano wp-config.php
# 修改以下行(替换为你的数据库信息):
# define('DB_NAME', 'your_db_name');
# define('DB_USER', 'your_db_user');
# define('DB_PASSWORD', 'your_db_password');
# define('DB_HOST', 'localhost');
4. 创建数据库 & 导入配置
sudo mysql -u root -p
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
5. 完成安装
访问 http://yourdomain.com,按向导完成 WordPress 初始化(站点标题、管理员账户等)。
📌 通用注意事项
| 项目 | 建议 |
|---|---|
| 防火墙 | 开放 80/443 端口(CentOS 8+ 用 firewall-cmd --add-service=http;CentOS 7 用 iptables) |
| SELinux | 生产环境建议设为 permissive 或临时关闭:setenforce 0(永久需改 /etc/selinux/config) |
| PHP 内存 | 编辑 /etc/php.ini,设置 memory_limit = 256M |
| 上传限制 | 在 wp-config.php 顶部加:define('WP_MEMORY_LIMIT', '256M');并在 Nginx 中加 client_max_body_size 64M; |
| 定时任务 | 设置 WP-Cron 需配合系统 cron(避免被攻击滥用):取消 DISABLE_WP_CRON,改用真实 cron 调用 |
需要我为你生成:
- 自动化部署 Shell 脚本?
- Docker 版 WordPress 快速部署方案?
- 针对特定场景(如多站点、CDN 提速)的优化配置?
欢迎告诉我你的具体需求 😊
PHPWP博客