加油
努力

阿里云ECS上Ubuntu系统下LNMP环境搭建完成后,如何导入WordPress文件?

在阿里云 ECS(Ubuntu 系统)上完成 LNMP(Linux + Nginx + MySQL + PHP)环境搭建后,导入 WordPress 文件的完整流程如下(含权限、配置、安全等关键细节):


✅ 一、前提确认(确保 LNMP 已正常运行)

# 检查服务状态(全部应为 active (running))
sudo systemctl status nginx
sudo systemctl status mysql
sudo systemctl status php8.1-fpm  # 或 php8.2-fpm,根据你安装的 PHP 版本调整

# 测试 PHP 是否被 Nginx 正确解析(创建测试页)
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
# 访问 http://你的ECS公网IP/info.php,应显示 PHP 信息页 → ✅ 成功

⚠️ 注意:LNMP 常见组合中,PHP 以 FPM 方式运行,Nginx 通过 fastcgi_pass 转发请求,务必确认 /etc/nginx/sites-available/default(或你的站点配置)中包含类似:

location ~ .php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;  # 路径需与实际一致
}

✅ 二、下载并解压 WordPress(推荐方式)

方法 1:直接下载官方最新版(推荐,安全可靠)

# 进入 Web 根目录(建议使用网站点目录,而非默认 /var/www/html)
sudo mkdir -p /var/www/your-site.com
cd /var/www/your-site.com

# 下载最新中文版(自动识别语言)或英文版
sudo wget https://cn.wordpress.org/latest-zh_CN.tar.gz
# 或英文版:
# sudo wget https://wordpress.org/latest.tar.gz

sudo tar -xzf latest-zh_CN.tar.gz --strip-components=1
sudo rm latest-zh_CN.tar.gz

# 设置正确所有权(重要!避免 500 错误或安装失败)
sudo chown -R www-data:www-data /var/www/your-site.com
sudo find /var/www/your-site.com -type d -exec chmod 755 {} ;
sudo find /var/www/your-site.com -type f -exec chmod 644 {} ;

方法 2:上传本地已准备好的 WordPress 文件(如含主题/插件)

  • 使用 SFTP 工具(如 FileZilla、WinSCP、Termius)连接 ECS:
    • 协议:SFTP
    • 主机:你的 ECS 公网 IP
    • 用户名:你的 Ubuntu 用户(如 ubuntu
    • 端口:22
  • 将本地 wordpress/ 文件夹整体上传至 /var/www/your-site.com/
  • 上传完成后,在终端执行权限修复:
    sudo chown -R www-data:www-data /var/www/your-site.com
    sudo chmod -R 755 /var/www/your-site.com/{wp-content,wp-admin,wp-includes}
    sudo chmod 644 /var/www/your-site.com/wp-config.php  # 若已存在

✅ 三、配置 Nginx 站点(关键步骤!)

📌 不要直接修改 /etc/nginx/sites-available/default!建议新建独立配置。

# 创建站点配置文件
sudo nano /etc/nginx/sites-available/your-site.com

✅ 粘贴以下标准 WordPress 配置(适配 PHP-FPM + 伪静态):

server {
    listen 80;
    server_name your-site.com www.your-site.com;  # 👉 替换为你的域名(或先用 IP 测试)
    root /var/www/your-site.com;
    index index.php index.html;

    # 防止敏感文件被直接访问
    location ~ /.ht {
        deny all;
    }
    location ~ ^/(wp-config.php|readme.html|license.txt) {
        deny all;
    }

    # WordPress 伪静态规则(支持固定链接)
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    # PHP 处理
    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;  # 🔁 确认路径与 `php -v` 和 `systemctl status php*-fpm` 一致
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

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

✅ 启用站点:

sudo ln -sf /etc/nginx/sites-available/your-site.com /etc/nginx/sites-enabled/
sudo nginx -t  # 检查语法(必须显示 success)
sudo systemctl reload nginx

💡 提示:若暂无域名,可先用 server_name _; 或直接用 IP 测试(但 WordPress 安装时需填对 URL)。


✅ 四、创建数据库 & 用户(MySQL)

sudo mysql -u root -p
-- 创建数据库(推荐 UTF8MB4 支持 emoji)
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- 创建专用用户(⚠️ 强烈不建议用 root 运行 WordPress)
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'StrongPass123!';

-- 授权
GRANT ALL ON wordpress.* TO 'wp_user'@'localhost';

-- 刷新权限
FLUSH PRIVILEGES;

EXIT;

✅ 记下:数据库名 wordpress、用户名 wp_user、密码 StrongPass123! —— 安装时需要。


✅ 五、运行 WordPress 安装向导

  1. 浏览器访问
    http://你的ECS公网IP/http://your-domain.com/
    → 应看到 WordPress 语言选择页 ✅

  2. 按向导填写:

    • 数据库名:wordpress
    • 用户名:wp_user
    • 密码:StrongPass123!
    • 数据库主机:localhost(LNMP 同机默认)
    • 表前缀:保持 wp_(或自定义,如 wp2024_
  3. 点击“提交” → “运行安装” → 填写站点标题、管理员账号密码、邮箱 → 完成!


✅ 六、(强烈建议)后续加固操作

项目 操作
🔐 禁用文件编辑 wp-config.php 末尾添加:
define('DISALLOW_FILE_EDIT', true);
📁 保护 wp-config.php 在 Nginx 配置中已加入 deny all,确保生效
🔄 设置固定链接 登录后台 → 设置 → 固定链接 → 选“文章名” → 保存(会自动生成 .htaccess,但 Nginx 不用,已由 try_files 规则支持)
🛡️ 启用 HTTPS(生产必备) 使用 Certbot 免费申请 Let’s Encrypt SSL:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your-domain.com
🧹 清理安装文件 安装成功后删除 /var/www/your-site.com/license.txt, readme.html

❌ 常见问题速查

现象 可能原因 解决方案
502 Bad Gateway PHP-FPM 未运行 / sock 路径错误 sudo systemctl restart php8.1-fpm;检查 fastcgi_pass 路径是否匹配 ls /run/php/
Error establishing a database connection 数据库名/用户/密码错;MySQL 未启动;wp-config.php 权限过高 检查 sudo mysql -u wp_user -p 是否能登录;确认 wp-config.php 中 DB_HOST 是 localhost(非 127.0.0.1,因 MySQL socket 优先)
白屏 / 500 错误 文件权限错误;PHP 扩展缺失(如 mysqlnd, curl, gd, xml sudo chown -R www-data:www-data ...sudo apt install php-mysql php-curl php-gd php-xml php-xmlrpc php-soap php-intl php-zip
上传附件失败 wp-content/uploads 权限不足;PHP upload_max_filesize 限制 sudo chown -R www-data:www-data wp-content;修改 /etc/php/*/fpm/php.ini
upload_max_filesize = 64M
post_max_size = 128M
max_execution_time = 300sudo systemctl restart php*-fpm nginx

如需我帮你:

  • ✅ 生成完整的 wp-config.php 示例(含安全密钥)
  • ✅ 编写一键部署脚本(含 LNMP + WP 自动化)
  • ✅ 配置阿里云安全组(开放 80/443 端口)
  • ✅ 迁移已有 WordPress 到该环境(含数据库导出导入)

欢迎随时告诉我,我可以为你定制输出 👇

祝你建站顺利!🚀

云服务器