在 Linux 系统上手动安装 WordPress(非一键脚本或面板),需掌握以下核心命令与概念,按安装流程分类整理,并附实用说明和安全提示:
✅ 一、系统准备与环境检查
| 命令 | 作用 | 示例/说明 |
|---|---|---|
uname -a / cat /etc/os-release |
查看系统版本(Ubuntu/CentOS/Rocky等) | lsb_release -a(Ubuntu/Debian);cat /etc/redhat-release(RHEL系) |
sudo apt update && sudo apt upgrade -ysudo yum update -y / sudo dnf update -y |
更新系统包(根据发行版选择) | Ubuntu/Debian 用 apt;CentOS 8+/Rocky/AlmaLinux 用 dnf;旧 CentOS 7 用 yum |
which nginx apache2 httpd |
检查 Web 服务器是否已安装 | 若未安装,后续需 sudo apt install nginx 或 sudo dnf install httpd php-fpm |
✅ 二、安装 LAMP/LEMP 环境(关键服务)
| 服务 | 必需命令(以 Ubuntu 22.04 + Nginx + PHP-FPM + MySQL 为例) |
|---|---|
| PHP | sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip✅ 验证: php -v & php -m | grep mysql |
| Web 服务器(Nginx) | sudo apt install nginx✅ 启动并设开机自启: sudo systemctl enable nginx && sudo systemctl start nginx✅ 检查状态: sudo systemctl status nginx |
| 数据库(MySQL/MariaDB) | sudo apt install mysql-server✅ 安全初始化: sudo mysql_secure_installation(设 root 密码、禁用匿名用户等)✅ 登录测试: sudo mysql -u root -p |
| 防火墙(UFW) | sudo ufw allow OpenSSHsudo ufw allow 'Nginx Full'sudo ufw enable |
🔑 重要:WordPress 要求 PHP ≥ 8.0(推荐 8.1+),MySQL ≥ 5.6(推荐 8.0+ 或 MariaDB 10.6+)
✅ 三、创建数据库与用户(安全实践!)
# 进入 MySQL(使用 sudo 或 root 密码登录)
sudo mysql -u root -p
# 在 MySQL 中执行(替换 your_db_name, your_user, strong_password):
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'YourStrongPass123!';
GRANT ALL ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
⚠️ 严禁使用 root 用户运行 WordPress! 必须创建专用低权限数据库用户。
✅ 四、下载与部署 WordPress 文件
| 命令 | 说明 |
|---|---|
cd /tmp && wget https://wordpress.org/latest.tar.gz |
下载最新版(校验可选:wget https://wordpress.org/latest.tar.gz.md5 → md5sum -c latest.tar.gz.md5) |
tar -xzf latest.tar.gz |
解压 |
sudo rsync -avP /tmp/wordpress/ /var/www/html/ |
同步到 Web 根目录(推荐 rsync 而非 cp,保留权限) |
sudo chown -R $USER:www-data /var/www/html/ |
设置属主(Ubuntu/Debian):$USER 是当前管理员,www-data 是 Nginx/Apache 运行用户 |
sudo find /var/www/html/ -type d -exec chmod 750 {} ;sudo find /var/www/html/ -type f -exec chmod 640 {} ; |
设置安全权限(目录 750,文件 640) |
💡 提示:生产环境建议将
wp-config.php移出 Web 可访问目录(如/var/www/上级),通过define('ABSPATH', '/var/www/wordpress/');指定路径。
✅ 五、配置 Web 服务器(Nginx 示例)
# 编辑站点配置(Ubuntu 路径)
sudo nano /etc/nginx/sites-available/wordpress
# 关键配置片段(支持伪静态、PHP 处理):
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock; # 注意 PHP 版本匹配
}
location ~ /.ht {
deny all;
}
}
# 启用站点
sudo ln -sf /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
✅ 六、完成安装(终端辅助操作)
| 场景 | 命令/操作 |
|---|---|
| 生成 wp-config.php | cd /var/www/html && sudo cp wp-config-sample.php wp-config.php然后编辑: sudo nano wp-config.php,填入数据库名、用户、密码、主机(通常 localhost) |
| 设置密钥(强烈推荐) | 访问 https://api.wordpress.org/secret-key/1.1/salt/ → 复制 8 组密钥,替换 wp-config.php 中的 define('AUTH_KEY', ...) 部分 |
| 修复权限(若安装页面报错) | sudo chown -R www-data:www-data /var/www/html/(确保 Web 服务可写 wp-content) |
✅ 七、常用维护与排错命令
| 用途 | 命令 |
|---|---|
| 查看错误日志 | sudo tail -f /var/log/nginx/error.logsudo journalctl -u nginx -fsudo tail -f /var/log/mysql/error.log |
| 重启服务 | sudo systemctl restart nginx php8.1-fpm mysql |
| 检查端口占用 | sudo ss -tuln | grep ':80' |
| 测试 PHP 是否工作 | echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php → 访问 http://your-ip/info.php → 安装后立即删除! |
🛡️ 安全加固关键提醒(必做!)
- ❌ 禁用
wp-config.php的 Web 访问:Nginx 中添加location ~ ^/wp-config.php$ { deny all; } - ❌ 删除
readme.html、license.txt等敏感文件:sudo rm /var/www/html/readme.html /var/www/html/license.txt - ✅ 定期更新:
sudo apt update && sudo apt upgrade+ WordPress 后台更新主题/插件 - ✅ 使用 Fail2ban 防暴力破解:
sudo apt install fail2ban
✅ 总结:必须熟练的 10 个核心命令
sudo systemctl start/enable/status <service> # 管理服务
sudo apt install / dnf install # 安装软件
mysql -u root -p # 登录数据库
CREATE DATABASE ...; CREATE USER ...; GRANT ... # 创建 DB 用户
rsync -avP /src/ /dst/ # 安全同步文件
chown -R user:group /path # 修改属主
chmod 640 /path/file && chmod 750 /path/dir # 设置权限
nginx -t && systemctl reload nginx # 验证并重载 Nginx
tail -f /var/log/... # 实时查看日志
wp-cli --allow-root core download # (进阶)用 WP-CLI 安装(替代 wget)
💡 进阶推荐:掌握 WP-CLI(WordPress 命令行工具),可一键安装、更新、管理站点,大幅提升效率:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp sudo chmod +x /usr/local/bin/wp cd /var/www/html && wp core download --locale=zh_CN
如需我为你生成 完整 Ubuntu 22.04 + Nginx + PHP 8.1 + MySQL 8.0 的一键安装脚本,或 Nginx/Apache 详细配置模板,欢迎随时告诉我 👍
CLOUD云枢