快速搭建WordPress

更新时间:

WordPress是一款免费开源的网站内容管理系统(CMS),他可以帮助您简单、快捷地创建和管理自己的网站,包括博客、新闻网站、电子商务网站、社交网络等。WordPress拥有丰富的主题和插件库,可以轻松地为网站定制外观和功能。本教程介绍如何快速搭建WordPress网站的方法。

搭建指引

本文档提供以下2种搭建WordPress博客的方案,您可以根据操作系统按需选择。

搭建方案

示例操作系统

说明

通过ROS一键部署搭建

  • Ubuntu 20.04/22.04

  • CentOS 7.7/7.8/7.9

  • Alibaba Cloud Linux 3.2104

通过ROS可以实现自动化部署WordPress网站。更多信息,请参见什么是资源编排服务

通过云市场镜像快速搭建

Alibaba Cloud Linux 3.2104

说明

如果您对操作系统有要求,可以选择对应操作系统的云市场镜像。

阿里云云市场提供WordPress镜像,用于快捷搭建WordPress网站,不需要部署Web环境,降低了建站的门槛,适用于刚开始使用阿里云ECS建站的企业或个人用户。更多信息,请参见了解镜像市场

操作步骤

使用ROS一键部署(推荐)

  1. 单击一键部署,根据界面提示配置参数后,单击立即部署

    关键参数说明如下:

    • 地域:就近选择业务所在ECS实例的地域。

    • 实例来源

      如果您对ECS实例的计费方式、磁盘、网络等有要求,建议您提前购买ECS实例,然后选择已有实例的方式即可。具体操作,请参见自定义购买实例

      创建新实例

      ROS会自动创建一台抢占式实例,并在实例中自动部署WordPress。由于抢占式实例不支持备案,如果您有备案需求,建议您手动创建包年包月实例且至少购买3个月,然后选择已有实例的方式自动部署WordPress。

      • 实例镜像:仅支持选择以下镜像:

        • Ubuntu 20.04/22.04

        • CentOS 7.7/7.8/7.9

        • Alibaba Cloud Linux 3.2104 LTS 64位(推荐)

      • 实例类型:按需选择实例规格。更多信息,请参见实例规格族

      • 实例密码:输入ECS实例的密码和确认密码。

      选择已有实例

      ROS会在选择的已有实例中自动部署WordPress,但ECS实例必须具有公网访问能力且操作系统为:

      说明

      如果购买实例时未分配公网IP,请绑定弹性公网IP。具体操作,请参见绑定EIP

      • Ubuntu 20.04/22.04

      • CentOS 7.7/7.8/7.9

      • Alibaba Cloud Linux 3.2104

  2. ROS会自动部署中,当进度为100%时,表示WordPress部署成功。

    说明

    WordPress部署成功后,您可以执行以下操作:

    • 查看创建的资源:您可以在ROS控制台查看创建的ECS实例、VPC、安全组等资源信息。具体操作,请参见查看资源栈

    • 修改数据库MySQL的密码:执行命令sudo grep 'temporary password' /var/log/mysqld.log查看root用户的初始密码,然后修改密码。具体操作,请参见常见问题

    image

  3. 单击查看效果地址,系统自动跳转到WordPress配置页面。

  4. 根据界面提示,填写信息参数后,单击安装WordPress

    填写信息参数说明:

    • 站点标题:WordPress网站的名称。例如:demowp。

    • 用户名:登录WordPress时所需的用户名,请注意安全性。例如:testwp。

    • 密码:登录WordPress时所需的密码,建议您设置安全性高的密码。例如:Wp.123456。

    • 您的电子邮件:用于接收通知的电子邮件。例如:username@example.com。

  5. 单击登录,输入在安装WordPress时设置的用户名testwp和密码Wp.123456,然后单击登录

    成功进入您个人的WordPress网站。使用WordPress的更多信息,请参见WordPress官网使用文档

    image

使用云市场镜像搭建

说明

本示例中使用的Wordpress平台( ALinux3 LNMP PHP)镜像基础环境如下:

  • 操作系统版本:Alibaba Cloud Linux 3.2104

  • Nginx版本:1.26.2

  • PHP版本:8.2

  • MySQL版本:8.0.40

  1. 使用WordPress镜像创建ECS实例。

    1. 登录ECS管理控制台

    2. 在左侧导航栏,选择实例与镜像 > 实例

    3. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

    4. 实例列表页,单击创建实例

    5. 自定义购买页面的镜像区域,选择云市场镜像 > 从云市场获取更多选择(含操作系统)镜像

    6. 在搜索框中输入Wordpress,并单击搜索,选择镜像后,单击使用

      您可以单击搜索结果中的镜像标题,进入云市场镜像售卖页,获取镜像的配置信息。本示例中使用的Wordpress平台( ALinux3 LNMP PHP)镜像如下。

      说明
      • 如果您对操作系统的版本有要求,可以选择对应操作系统的云市场镜像。

      • 选择云市场镜像,您需要关注镜像的费用问题,如果镜像显示¥0/时,表示镜像不收取费用。

      image

      更多镜像环境,您可在云市场基础环境中搜索筛选。

    7. 自定义购买页面,按照界面提示,配置参数。

      请注意以下参数,更多参数说明,请参见自定义购买实例

      • 镜像镜像区域已自动设置为您选购的镜像。

      • 公网 IP:选中分配公网 IPv4 地址,并根据业务需要,设置带宽值。

  2. 获取WordPress和MySQL数据库的用户名和密码。

    1. 远程连接ECS实例。

      具体操作,请参见使用Workbench工具以SSH协议登录Linux实例

    2. 执行以下命令,查看数据库的用户名和密码。

      sudo cat /root/ReadMe

      image

  3. 登录WordPress。

    1. 在本地浏览器中输入http://实例公网IP/wp-admin

      进入WordPress登录页面。

      说明

      ECS实例创建后,安全组默认在入方向规则中放行22、80端口。您可以根据实际需求,放行其他应用所需的端口号。具体操作,请参见添加安全组规则。例如:

      • 远程连接MySQL数据库时,需要放行MySQL默认占用的3306端口。

      • 使用HTTPS时,需要放行443端口。

    2. 使用获取到的WordPress用户名和密码,登录WordPress网站。

      出现如下界面,表示成功搭建WordPress网站。使用WordPress的更多信息,请参见:

      image

相关操作

解析WordPress网站域名

通过实例公网IP地址直接访问您的WordPress网站会降低服务端的安全性。如果您已有域名或者想为WordPress网站注册一个域名,可以参考以下步骤。

  1. 注册域名。

    您可以在阿里云注册域名。具体操作,参见通用域名注册基本流程如何注册阿里云域名

  2. 备案域名。

    如果您的域名指向的网站托管在阿里云中国内地节点服务器,您需要进行备案。首次备案,请参见ICP备案流程,其他情况请参见ICP备案流程

    说明
    • 备案要求ECS实例的计费方式为包年包月且至少购买3个月,如果您的服务器购买时长不满足备案要求,需执行以下操作:

    • 整个备案流程预计所需时长约1~22个工作日左右,具体时长以实际操作时间为准。

    • 备案过程中的常见问题,请参见备案常见问题

  3. 解析域名。

    将域名指向实例公网IP。具体操作,请参见设置域名解析

    说明

    域名解析过程中的常见问题,请参见解析不生效类问题

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

    1. 远程连接已搭建WordPress网站的ECS实例。

      具体操作,请参见连接实例

    2. (条件必选)如果您的ECS实例为Windows操作系统,则需要执行本步骤。

      返回搭建WordPress网站的ECS实例,进入MySQL安装目录下的bin文件夹,先按下shift键,同时单击鼠标右键,然后选择在此处打开命令窗口(W)

      1

    3. 运行以下命令,登录MySQL数据库。

      mysql -u root -p
    4. 运行以下命令,切换至WordPress对应的数据库。

      use wordpress;
    5. 为WordPress网站设置新域名。

      说明

      本示例注册域名为www.example.com

      • Linux:

        运行以下命令,将实例公网IP替换为新域名。

        update wp_options set option_value = replace(option_value, 'http://实例公网IP', 'http://www.example.com') where option_name = 'home' OR option_name = 'siteurl';
      • Windows:

        运行以下命令,将http://localhost/替换为新域名。

        update wp_options set option_value = replace(option_value, 'http://localhost', 'http://www.example.com') where option_name = 'home' OR option_name = 'siteurl';
    6. 运行以下命令,退出MySQL。

      exit;

      成功为WordPress网站设置新域名。

常见问题

Q1:无法通过公网IP访问WordPress

可能原因及其解决方案:

  • 安全组未放开80端口、系统防火墙开启、80端口被占用

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

  • PHP、MySQL版本与WordPress版本不匹配

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

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

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

  1. 登录搭建WordPress的ECS实例。

    具体操作,请参见使用Workbench工具以SSH协议登录Linux实例

  2. 运行以下命令,打开Nginx配置文件。

    sudo vim /etc/nginx/nginx.conf
  3. i键进入编辑模式。

  4. location /大括号内,添加如下代码。

    if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
    rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
    rewrite (.*) /index.php;
    }
  5. Esc键,输入:wq后按Enter键,保存退出配置文件。

  6. 运行以下命令,重启Nginx服务。

    sudo systemctl restart nginx

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

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

  1. 登录搭建WordPress的ECS实例。

    具体操作,请参见使用Workbench工具以SSH协议登录Linux实例

  2. 运行以下命令,打开WordPress配置文件。

    sudo vim /usr/share/nginx/html/wordpress/wp-config.php
  3. i键进入编辑模式。

  4. 在最下方,添加如下代码。

    define("FS_METHOD","direct");
    define("FS_CHMOD_DIR", 0777);
    define("FS_CHMOD_FILE", 0777);
  5. Esc键,输入:wq后按Enter键,保存退出配置文件。

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

    如果仍存在无法创建目录的问题,需再次返回ECS实例,运行以下命令,将网站根目录的权限用户更新为Nginx对应的用户,本示例环境中为nginx用户。

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

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

  1. 远程连接安装WordPress镜像的ECS实例。

    具体操作,请参见使用Workbench工具以SSH协议登录Linux实例

  2. 运行以下命令,登录MySQL数据库。

    mysql -u root -p

    根据回显信息,输入MySQL数据库root用户的默认密码。

    [test@izbp1cgfkqcrs8pi2li**** ~]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 3
    Server version: 5.7.23 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql>
  3. 运行以下命令,进入MySQL数据库。

    use mysql
    说明

    运行select user from mysql.user;命令,可查看MySQL数据库的用户名。

  4. 根据需求,修改数据库的用户名和密码。

    • 运行以下命令,修改数据库用户名为新用户名。

      update user set user="新用户名" where user="用户名";

      本示例将root用户名修改为admin,命令如下:

      update mysql.user set user="admin" where user="root";
    • 运行以下命令,修改数据库用户名的密码。

      update mysql.user set authentication_string=password("新密码") where user="要更新密码的用户名";

      本示例将root用户密码改为newpassword,命令如下:

      update mysql.user set authentication_string=password("newpassword") where user="root";
  5. 运行以下命令,刷新权限使修改生效。

    flush privileges; 
  6. 运行以下命令,退出MySQL数据库。

    quit;

相关文档