阿里云ECS Ubuntu系统安装LNMP后怎么配置WordPress网站?

在阿里云 ECS 上跑 Ubuntu 装 WordPress,这属于云原生时代最经典的“Hello World”级操作。既然你装了 LNMP(Linux + Nginx + MySQL/MariaDB + PHP),说明底层环境已经就绪,剩下的就是“搭桥”和“调优”。

别整那些虚的,直接上干货。以下是基于生产环境标准的配置流程,分为 数据库准备、Nginx 配置、PHP 适配、WordPress 安装与权限 四个核心步骤。

第一步:创建数据库和用户(MySQL/MariaDB)

WordPress 需要独立的数据库用户,不要直接用 root,这是安全红线。

登录服务器后进入 MySQL 命令行:

mysql -u root -p

执行以下 SQL 语句(请替换 your_password 为强密码):

-- 1. 创建数据库
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- 2. 创建专用用户并授权(推荐指定 localhost,更安全)
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_strong_password';

-- 3. 授予权限
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';

-- 4. 刷新权限表
FLUSH PRIVILEGES;

-- 5. 退出
EXIT;

注意:这里用 utf8mb4 而不是 utf8,因为 WordPress 需要支持 Emoji 表情(4字节字符),老版本的 utf8 只支持3字节,会导致存不了 emoji。

第二步:配置 Nginx 虚拟主机

假设你的域名是 example.com,网站根目录放在 /var/www/html/wordpress。

  1. 创建站点目录并下载 WP:
sudo mkdir -p /var/www/html/wordpress
cd /tmp
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
sudo tar -zxvf latest-zh_CN.tar.gz -C /var/www/html/wordpress --strip-components=1
  1. 修改文件所有者:
# 将所有权交给 www-data(Ubuntu 默认 Nginx 运行用户)
sudo chown -R www-data:www-data /var/www/html/wordpress
  1. 编写 Nginx 配置文件:

新建文件 /etc/nginx/sites-available/wordpress:

server {
    listen 80;
    server_name example.com www.example.com; # 替换为你的域名
    root /var/www/html/wordpress;
    index index.php index.html index.htm;

    # 禁止访问隐藏文件
    location ~ /. {
        deny all;
    }

    # 静态资源缓存优化
    location ~* .(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        add_header Cache-Control "public, immutable";
    }

    # WordPress 伪静态规则(核心)
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    # PHP 处理
    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php-fpm.sock; # 确保路径正确,Ubuntu 通常是这个
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}
  1. 启用站点并重启 Nginx:
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
sudo nginx -t   # 测试配置语法
sudo systemctl reload nginx

第三步:PHP 关键配置调整

Ubuntu 默认的 PHP 配置对于高并发或大文件上传可能不够用,建议微调 /etc/php/8.x/fpm/php.ini(根据你安装的 PHP 版本选择目录,如 7.4 或 8.1)。

重点修改以下参数:

memory_limit = 256M          # 内存限制,WP 插件多了容易 OOM
upload_max_filesize = 64M    # 允许上传附件大小
post_max_size = 64M          # POST 数据最大限制
max_execution_time = 300     # 脚本最大执行时间,防止备份插件超时
date.timezone = Asia/Shanghai # 设置时区,否则前台时间会差8小时

修改完后重启 PHP-FPM:

sudo systemctl restart php8.x-fpm

第四步:通过 Web 界面完成安装 & 权限加固

  1. 浏览器访问:打开 http://example.com,你会看到熟悉的 WordPress 五步安装向导。
  2. 填写数据库信息:
    • Database Name: wordpress
    • Username: wp_user
    • Password: your_strong_password
    • Database Host: localhost
    • Table Prefix: wp_ (保持默认即可)
  3. 运行安装:点击提交,按照提示设置管理员账号和密码。

第五步:生产环境必做的“收尾工作”

很多新手装完就走了,结果被挂马或者加载极慢。这几步不做,等于白装。

1. 固定 Permalink(永久链接)

进入 WP 后台 -> 设置 -> 固定链接,选择“文章名”或其他结构,保存一次。这会触发 Nginx 重写规则生效。如果之前没配好 .htaccess(Nginx 下不需要),这一步至关重要。

2. 配置 WP-Config.php 安全项

编辑 /var/www/html/wordpress/wp-config.php,在 define('DB_COLLATE', ''); 之后添加以下定义:

// 强制使用 HTTPS(如果你后续开了 SSL)
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);

// 禁用文件编辑器(防止后台被黑后直接改代码)
define('DISALLOW_FILE_EDIT', true);

// 自动保存间隔设为 120 秒,减少数据库压力
define('AUTOSAVE_INTERVAL', 120);

// 回收站保留天数
define('EMPTY_TRASH_DAYS', 30);

3. 阿里云安全组放行

检查阿里云控制台 -> ECS -> 实例 -> 安全组。确保 入方向 放行了 TCP 80 和 TCP 443(如果以后要开 SSL)。如果不开 80 端口,网络根本访问不到你的网站。

4. 安装 Redis 对象缓存(可选但强烈建议)

LNMP 环境下,加上 Redis 缓存可以极大提升 WP 性能。

  • 安装 Redis 服务:sudo apt install redis-server
  • 在 WP 中安装插件 “Redis Object Cache”。
  • 启用插件,它会自动检测本地 Redis 服务。

常见坑点排查

  • 502 Bad Gateway:通常是 PHP-FPM 挂了,或者 Nginx 配置的 fastcgi_pass 路径不对。检查 systemctl status php8.x-fpm。
  • 图片上传失败:检查 /var/www/html/wordpress/wp-content/uploads 目录权限是否为 www-data。
  • 中文乱码:确认数据库创建时用了 utf8mb4,且 Nginx 和 PHP 编码一致。
  • 无法访问:先 ping 一下 IP,再 telnet IP 80。如果是阿里云,90% 原因是安全组没开 80 端口。

这套流程走下来,你的 WordPress 就是一个标准、安全、高性能的生产级站点了。接下来可以考虑申请阿里云免费的 SSL 证书(Let’s Encrypt 或 DigiCert),把 HTTP 升级为 HTTPS,这对 SEO 和用户信任度都是必须的。

未经允许不得转载:CLOUD云枢 » 阿里云ECS Ubuntu系统安装LNMP后怎么配置WordPress网站?