全部产品
Search
文档中心

云服务器 ECS:手动搭建WordPress(Linux)

更新时间:Dec 24, 2025

为实现网站环境的完全自主管理,可手动部署LNMP架构并安装WordPress,从而灵活构建博客、门户网站。

准备工作

  • 开通公网:为实例分配固定公网IP地址或绑定弹性公网IP(EIP)。

  • 添加安全组规则:实例的安全组入方向放行TCP协议的2280端口。

操作步骤

以Alibaba Cloud Linux 3为例部署WordPress 6.4.4。

步骤一:部署LNMP环境

  1. 登录ECS实例。

    1. 访问ECS控制台-实例。在页面左侧顶部,选择目标资源所在的资源组和地域。

    2. 进入目标实例详情页,单击远程连接,选择通过Workbench远程连接。根据页面提示登录,进入终端页面。

  2. 部署LNMP环境

    安装Nginx、MySQL、PHP等核心组件。

    WordPress与PHP、MySQL版本存在依赖关系,版本不匹配则会导致WordPress安装失败。具体依赖信息,请参见WordPress Compatibility

步骤二:创建WordPress数据库

为WordPress创建一个专用的数据库和数据库用户。

  1. 登录MySQL。密码为搭建LNMP环境时为数据库设置的密码。

    mysql -u root -p
  2. 创建数据库和用户并授权。

    请记录数据库名称、用户名和密码,供后续步骤使用。

    -- 创建名为 wordpress 的数据库
    CREATE DATABASE WORDPRESS_DATABASE;
    
    -- 创建一个专用用户 wordpress_user并设置密码,建议设置一个包含大小写字母、数字和特殊符号,长度不低于12位的强密码。
    CREATE USER 'WORDPRESS_USER'@'localhost' IDENTIFIED BY 'WORDPRESS_PASSWORD';
    
    -- 赋予该用户对 wordpress 数据库的全部权限
    GRANT ALL PRIVILEGES ON wordpress.* TO 'WORDPRESS_USER'@'localhost';
    
    -- 刷新权限使配置生效
    FLUSH PRIVILEGES;
    
    -- 退出MySQL
    EXIT;
    MySQL在5.7版本后默认安装了密码强度验证插件。密码验证规则:长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号,其中特殊符号包含()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

步骤三:下载并配置WordPress

  1. 进入Nginx网站根目录,下载6.4.4中文版WordPress。

    如需安装WordPress英文版本,请将URL替换为https://wordpress.org/wordpress-6.4.4.zip,后续解压的压缩包名称需替换为wordpress-6.4.4.zip
    sudo cd /usr/share/nginx/html
    sudo wget https://cn.wordpress.org/wordpress-6.4.4-zh_CN.zip
  2. 安装unzip命令,解压WordPress压缩包。

    sudo yum install unzip -y
    sudo unzip wordpress-6.4.4-zh_CN.zip
  3. wp-config-sample.php文件复制为wp-config.php,并将原文件作为备份。

    cd /usr/share/nginx/html/wordpress
    sudo cp wp-config-sample.php wp-config.php
  4. 编辑配置文件,填入在步骤二中创建的数据库信息,包括数据库名称、用户名和密码。

    sudo vim wp-config.php

    i键进入编辑模式。

    /** WordPress数据库的名称 */
    define('DB_NAME', 'WORDPRESS_DATABASE');
    
    /** MySQL数据库用户名 */
    define('DB_USER', 'WORDPRESS_USER');
    
    /** MySQL数据库密码 */
    define('DB_PASSWORD', 'WORDPRESS_PASSWORD');
    
    /** MySQL主机 */
    define('DB_HOST', 'localhost');

    修改完成后,按Esc键,输入:wq并按Enter键保存退出。

步骤四:配置Nginx

修改Nginx的默认站点配置,使其正确处理PHP请求。

  1. 备份默认配置并创建新的Nginx配置文件。

    sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
    sudo vim /etc/nginx/conf.d/default.conf
  2. 修改Nginx配置文件。

    i键进入编辑模式,在serverlocation ~ .php$模块内,将root后的内容替换为WordPress根目录。示例中WordPress的根目录为/usr/share/nginx/html/wordpress

    image

    Esc键,输入:wq后按Enter键,保存退出配置文件。

  3. 检查配置语法。

    如果显示syntax is ok,则表示可以正常重启。

    sudo nginx -t
    若检查语法报错,可通过sudo mv /etc/nginx/conf.d/default.conf.bak /etc/nginx/conf.d/default.conf恢复默认配置。
  4. 重启Nginx使配置生效。

    sudo systemctl restart nginx

步骤五:安装并登录WordPress网站

完成服务器端配置后,需要通过浏览器完成WordPress的初始化。

  1. 在本地物理机上使用浏览器访问http://ECS实例公网IP,进入WordPress安装页面。

  2. 填写网站基本信息,包括站点标题、管理员用户名密码您的电子邮件,然后单击安装 WordPress

  3. 安装成功后,单击登录,使用上一步设置的用户名和密码登录。

    若成功登录,表示WordPress网站已成功搭建并运行。更多信息,请参见WordPress官网使用文档

后续步骤

通过FTP管理文件

通过FTP上传WordPress主题或者插件,需要搭建FTP站点(Linux)

解析域名并配置HTTPS

直接使用IP地址访问网站不专业且不安全,建议为网站绑定域名并启用HTTPS加密。

  1. 注册域名并备案

    • 如果没有域名,可在阿里云进行域名注册

    • 如果域名指向的网站托管在阿里云中国内地节点服务器,需要进行备案。具体操作,请参见ICP备案流程

  2. 设置域名解析

    将域名解析到ECS实例的公网IP地址。

  3. 将实例公网IP替换为新域名。

    1. 远程连接实例,登录MySQL数据库。

      mysql -u root -p
    2. 切换至WordPress对应的数据库,设置域名。

      public_ip替换为实例公网IP,将domain替换为域名。

      use wordpress;
      UPDATE wp_options SET option_value = replace(option_value, 'http://PUBLIC_IP', 'http://DOMAIN') where option_name = 'home' OR option_name = 'siteurl';
      EXIT;
  4. 配置SSL证书(HTTPS) 

    部署SSL证书可以为网站启用HTTPS加密数据传输,保护用户隐私,并获得更好的浏览器信任和SEO排名。

常见问题

无法通过公网IP访问WordPress?

  • 检查安全组与防火墙:确认实例安全组已放行80端口。

  • 检查防火墙:确认操作系统内部防火墙(如firewalld)没有阻止80端口。

  • 检查服务状态:在ECS上运行sudo systemctl status nginxsudo systemctl status php-fpm,确保服务处于active (running) 状态。

  • 检查端口监听:确认80端口正被监听。

具体排查方法,请参见无法访问ECS实例中的服务的排查方法

WordPress中设置固定链接后,跳转页面无法访问?

网站设置为静态网页有利于搜索引擎收录网站。在对WordPress站点设置固定链接前,需要先在Nginx服务器中设置静态规则。

  1. 远程连接实例,打开Nginx配置文件。

    sudo vim /etc/nginx/conf.d/default.conf

    i键进入编辑模式,在location /模块内,添加如下代码。

    try_files $uri $uri/ /index.php?$args;

    Esc键,输入:wq后按Enter键,保存退出配置文件。

  2. 重启Nginx服务,使配置生效。

    sudo systemctl restart nginx

WordPress中更新版本、上传主题或插件时,提示需要FTP登录凭证或无法创建目录?

该问题可能是因为WordPress配置文件、主题或插件的权限不足,可以参考以下步骤解决。

  1. 登录ECS实例,打开WordPress配置文件。

    sudo vim /usr/share/nginx/html/wordpress/wp-config.php

    i键进入编辑模式,在最下方,添加如下代码。

    define("FS_METHOD","direct");
    define("FS_CHMOD_DIR", 0777);
    define("FS_CHMOD_FILE", 0777);

    Esc键,输入:wq后按Enter键,保存退出配置文件。

  2. 返回WordPress仪表盘,刷新页面,可解决需要FTP登录凭证的问题。

    如果仍存在无法创建目录的问题,将网站根目录的权限用户更新为Nginx对应的用户nginx

    sudo chown -R nginx /usr/share/nginx/html/wordpress

如何修改WordPress镜像中的MySQL 5.7数据库的默认用户名和密码?

  1. 远程连接ECS实例,登录MySQL数据库。

    mysql -u root -p
  2. 进入mysql数据库,查看用户名。

    use mysql;
    select user from mysql.user;
  3. 修改数据库的用户名和密码。

    • 修改数据库用户名为新用户名。

      UPDATE user SET user='NEW_USER_NAME' WHERE user='USER_NAME';

      以将root用户名修改为admin为例:

      UPDATE mysql.user SET user='admin' WHERE user='root';
    • 修改数据库用户名的密码。

      ALTER USER 'USER_NAME'@'localhost' IDENTIFIED BY 'PASSWORD'

      以将root用户密码改为Password@2025!为例:

      ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password@2025!';
  4. 刷新权限使修改生效,退出MySQL数据库。

    FLUSH PRIVILEGES; 
    EXIT;

相关文档