在 CentOS 8 上安装 WordPress 的过程主要包括以下几个步骤:
🧰 前提条件
确保你已经具备以下环境:
- CentOS 8 操作系统
- root 或 sudo 权限
- 安装了 LAMP(Linux + Apache + MariaDB/MySQL + PHP)环境
✅ 第一步:安装 LAMP 环境
1. 更新系统软件包
sudo dnf update -y
2. 安装 Apache
sudo dnf install httpd -y
sudo systemctl enable httpd
sudo systemctl start httpd
3. 安装 MariaDB(MySQL 替代)
sudo dnf install mariadb-server mariadb -y
sudo systemctl enable mariadb
sudo systemctl start mariadb
运行安全初始化:
sudo mysql_secure_installation
按照提示设置数据库 root 密码。
4. 安装 PHP 及常用模块(WordPress 所需)
sudo dnf install php php-mysqlnd php-curl php-gd php-mbstring php-xml unzip wget -y
重启 Apache:
sudo systemctl restart httpd
✅ 第二步:配置 MariaDB 数据库
登录 MariaDB:
sudo mysql -u root -p
创建 WordPress 数据库和用户(替换 your_password):
CREATE DATABASE wordpress;
CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost';
FLUSH PRIVILEGES;
exit;
✅ 第三步:下载并解压 WordPress
进入 web 根目录:
cd /var/www/html
备份默认内容(可选):
sudo mv index.html index.html.bak
下载 WordPress 最新版:
sudo wget https://wordpress.org/latest.zip
解压文件:
sudo unzip latest.zip
更改文件权限:
sudo chown -R apache:apache wordpress
sudo chmod -R 755 wordpress
将 WordPress 文件移动到网站根目录(可选):
sudo mv wordpress/* .
sudo rmdir wordpress
✅ 第四步:配置 WordPress
重命名配置文件:
cd /var/www/html
sudo cp wp-config-sample.php wp-config.php
sudo nano wp-config.php
修改数据库连接信息:
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'your_password');
define('DB_HOST', 'localhost');
保存并退出(Ctrl+O,Enter,Ctrl+X)。
✅ 第五步:设置防火墙允许访问 HTTP/HTTPS
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
✅ 第六步:通过浏览器完成安装
打开浏览器,访问你的服务器 IP 地址:
http://your_server_ip
按照页面提示填写站点标题、管理员用户名、密码等信息,即可完成安装。
🔒 安全建议(可选)
- 配置
.htaccess和文件权限以提高安全性。 - 使用 Let’s Encrypt 配置 HTTPS。
- 定期更新 WordPress 和插件。
📌 常见问题排查
1. 页面显示“无法连接数据库”
- 检查
wp-config.php中的数据库用户名、密码是否正确。 - 确保 MariaDB 正在运行:
systemctl status mariadb
2. 无法上传图片或主题
- 检查
wp-content目录权限:sudo chown -R apache:apache wp-content sudo chmod -R 755 wp-content
如果你需要我帮你写一个完整的自动化脚本或者配置 HTTPS,请告诉我!
云知识