使用 LNMP 搭建 WordPress 的完整步骤
想要在云服务器上快速部署一个属于自己的 WordPress 网站吗?LNMP(Linux, Nginx, MySQL/MariaDB, PHP)这套经典组合,以其高效稳定著称,是搭建 WordPress 的首选环境。本指南将为你提供一份从零开始的详细教程,手把手教你完成 LNMP 环境下的 WordPress 安装,并帮助你规避部署过程中常见的错误。
一、准备工作与版本选择
充分的准备是成功部署的关键第一步。
- 服务器环境准备:首先,你需要一台拥有公网 IP 地址的 Linux 服务器(推荐使用 Alibaba Cloud Linux 3、CentOS 7/8 等发行版)。请务必在服务器的安全组或防火墙中,正确配置入站规则,开放 TCP 22 端口(用于 SSH 远程连接)和 80 端口(用于 HTTP 网页访问)。若计划远程管理数据库,还需额外放行 3306 端口。
- 软件版本兼容性:软件版本间的兼容性直接影响安装成败。以 WordPress 6.4.x 为例,它对 PHP 和 MySQL 的版本有明确要求。在开始前,强烈建议访问 WordPress 官方文档的兼容性页面进行核对,确保所选组件版本相互支持。
- 端口冲突检查:如果服务器上已安装 Apache 等 Web 服务,它们会默认占用 80 端口。在安装 Nginx 前,请务必停止或卸载这些服务,或修改其监听端口,以避免端口冲突导致服务无法启动。
二、部署 LNMP 基础环境
稳定的运行环境是网站流畅访问的基石,请仔细完成每一步。
- 安装核心组件:以 Alibaba Cloud Linux 3 或 CentOS 7/8 为例,首先通过包管理器更新系统。随后,一次性安装 Nginx、MariaDB/MySQL、PHP 及其常用扩展(如 php-fpm、php-mysqlnd、php-gd、php-mbstring)。安装完成后,启动 Nginx、MySQL 和 PHP-FPM 服务,并设置为开机自动启动。
- 验证 PHP 运行状态:安装完成后,需要验证 PHP 是否已与 Nginx 协同工作。一个有效的方法是:在 Nginx 的默认网站根目录(例如
/usr/share/nginx/html)下,创建一个info.php文件,内容为。保存后,通过浏览器访问https://你的服务器IP/info.php。如果能看到 PHP 信息页面,则证明 LNMP 环境部署成功。
三、为 WordPress 创建数据库与用户
WordPress 需要数据库来存储所有内容,因此需要提前创建。
- 登录 MySQL:使用命令
mysql -u root -p并以 root 用户身份登录 MySQL 数据库。 - 执行建库授权命令:在 MySQL 命令行中,依次执行以下 SQL 语句,创建专用的数据库和用户(请务必将示例密码
YourStrongPassw0rd!替换为你自己的高强度密码):
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'YourStrongPassw0rd!';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
- 注意密码策略:请注意,MySQL 5.7 及以上版本默认启用了强密码验证插件。建议设置 8-30 位字符的密码,并混合使用大小写字母、数字和特殊符号,否则可能导致用户创建失败。
四、安装 WordPress 并配置 Nginx
核心软件部署与 Web 服务器配置是本教程的重点。
- 下载并解压程序:进入你的网站根目录(如
/usr/share/nginx/html),下载 WordPress 中文版并解压。以下以 6.4.4 版本为例:
cd /usr/share/nginx/html
sudo wget https://cn.wordpress.org/wordpress-6.4.4-zh_CN.zip
sudo yum install unzip -y # 如果是 Ubuntu/Debian 系统,使用:sudo apt install unzip -y
sudo unzip wordpress-6.4.4-zh_CN.zip
- 配置数据库连接文件:进入解压后的 WordPress 目录,复制配置文件模板并进行编辑:
cd /usr/share/nginx/html/wordpress
sudo cp wp-config-sample.php wp-config.php
sudo vim wp-config.php
找到数据库连接参数部分,修改为你在第三步中创建的信息:
define('DB_NAME', 'wordpress');
define('DB_USER', 'wp_user');
define('DB_PASSWORD', 'YourStrongPassw0rd!');
define('DB_HOST', 'localhost');
- 配置 Nginx 虚拟主机:为了让 Nginx 正确伺服 WordPress,需要编辑站点配置文件(如
/etc/nginx/conf.d/default.conf),将root指向 WordPress 所在目录。一个基础的配置示例如下:
server {
listen 80;
server_name _;
root /usr/share/nginx/html/wordpress;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000; # 如果 PHP-FPM 使用 Unix Socket,改为类似:fastcgi_pass unix:/var/run/php/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
}
}
- 测试并应用配置:配置文件修改完成后,务必先测试语法是否正确,无误后再重载 Nginx 并重启 PHP-FPM 服务,使配置生效:
sudo nginx -t
sudo systemctl reload nginx
sudo systemctl restart php-fpm
五、完成安装、绑定域名与故障排查
最后阶段,启动 WordPress 并处理域名绑定等后续工作。
- 运行安装向导:在浏览器中访问
https://你的服务器公网IP,WordPress 著名的五分钟安装界面将会出现。按照提示填写站点标题、管理员用户名、密码和邮箱等信息,即可完成安装并登录后台管理界面。 - 绑定自定义域名与启用 HTTPS:
- 域名解析设置:如果你拥有自己的域名,需要在域名管理后台添加一条 A 记录,将其指向服务器的公网 IP 地址。请注意,若服务器位于中国大陆地区,域名必须完成 ICP 备案方可正常访问。
- 更新站点地址:绑定域名后,需要进入数据库,将 WordPress 设置中的旧 IP 地址批量更新为新域名(请替换以下命令中的实际值):
mysql -u root -p
USE wordpress;
UPDATE wp_options SET option_value = REPLACE(option_value, 'https://PUBLIC_IP', 'https://DOMAIN') WHERE option_name IN ('home','siteurl');
EXIT;
- 部署 SSL 证书:为保障网站数据传输安全,强烈建议部署 SSL 证书以启用 HTTPS。你可以使用云平台提供的免费证书,或通过 Let’s Encrypt 等工具自动申请和配置。
- 常见问题快速解决:
- 网站无法公网访问:首先检查服务器安全组/防火墙是否已放行 80 端口;其次,确认 Nginx 和 php-fpm 服务是否处于运行状态(
systemctl status nginx php-fpm);最后,使用netstat -tlnp | grep :80命令检查 80 端口是否被 Nginx 正常监听。 - 固定链接(Permalink)返回 404 错误:这通常是 Nginx 重写规则未正确配置所致。请确保在
location /块中已包含try_files $uri $uri/ /index.php?$args;指令,保存后执行sudo systemctl reload nginx重载配置。 - 更新主题/插件或上传文件时要求 FTP 凭据:此问题源于文件权限。解决方法是在
wp-config.php文件末尾添加以下三行定义:
- 网站无法公网访问:首先检查服务器安全组/防火墙是否已放行 80 端口;其次,确认 Nginx 和 php-fpm 服务是否处于运行状态(
define("FS_METHOD","direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);
同时,需要将 WordPress 目录的所有权更改为 Nginx 的运行用户(例如 nginx):
sudo chown -R nginx:nginx /usr/share/nginx/html/wordpress
至此,一个基于 LNMP 环境的 WordPress 网站已成功搭建并完成基本配置。整个过程步骤清晰,只要跟随指南操作,并对遇到的问题进行针对性排查,你就能快速拥有一个功能完整、自主可控的网站。接下来,你可以自由地安装主题、插件,并开始发布你的网站内容了。
