游乐游手机版
首页/编程语言/文章详情

如何使用LNMP搭建WordPress

时间:2026-05-05 21:20
使用 LNMP 搭建 WordPress 的完整步骤 想要在云服务器上快速部署一个属于自己的 WordPress 网站吗?LNMP(Linux, Nginx, MySQL MariaDB, PHP)这套经典组合,以其高效稳定著称,是搭建 WordPress 的首选环境。本指南将为你提供一份从零开始的

使用 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 文件末尾添加以下三行定义:
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 网站已成功搭建并完成基本配置。整个过程步骤清晰,只要跟随指南操作,并对遇到的问题进行针对性排查,你就能快速拥有一个功能完整、自主可控的网站。接下来,你可以自由地安装主题、插件,并开始发布你的网站内容了。

来源:https://www.yisu.com/ask/59695874.html
上一篇SSH隧道是如何工作的 下一篇如何用deluser删除用户
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
RecyclerView不显示内容的常见原因及修复
编程语言 · 2026-07-07

RecyclerView不显示内容的常见原因及修复

RecyclerView无数据显示,常见原因为Adapter的getItemCount()返回0。修复方法是将硬编码的0改为动态返回数据大小,如contacts size()。增强版Adapter需实现空安全及刷新支持。其他检查点包括设置布局管理器、避免RecyclerView高度为wrap_content、确保Item布局宽高合理及数据非空验证。

Python一行代码读取多种类型输入
编程语言 · 2026-07-07

Python一行代码读取多种类型输入

使用`map(call,(int,str,int),input() split())`可一行代码解析混合类型输入,实现类型自动转换,比列表推导式更简洁。输入字段数量需与类型元组严格一致,支持封装为`read_types`函数复用。

Java中高效操作对象集合:避免无意义的Map构建
编程语言 · 2026-07-07

Java中高效操作对象集合:避免无意义的Map构建

直接遍历对象集合并访问嵌套字段执行操作,时间复杂度O(n)且无额外内存开销。先构建Map再遍历则增加哈希表初始化、键值插入和二次迭代消耗,数据量大时性能差距显著,应避免此类功能冗余。

BoxLayout仅居中一个组件其余默认对齐的方法
编程语言 · 2026-07-07

BoxLayout仅居中一个组件其余默认对齐的方法

在Swing的BoxLayout(Y_AXIS)中,setAlignmentX无法单独居中组件,因为该布局下所有组件的对齐由容器统一管理。三种可靠方案:嵌套JPanel通过分组隔离可分别设置左对齐和居中;GridBagLayout可独立控制每个组件的对齐方式;RelativeLayout允许组件单独设置其对齐方式。

Avro枚举兼容性:新增值失败原因与正确演进实践
编程语言 · 2026-07-07

Avro枚举兼容性:新增值失败原因与正确演进实践

Avro枚举向后兼容依赖二进制索引映射,JSON序列化因绕过索引机制导致新增符号失败;default仅对字段缺失生效,无法处理未知符号。演进需在末尾追加符号并采用二进制格式,推荐启用SchemaRegistry确保兼容。