阿里云服务器安装WordPress网站教程基于CentOS系统

news2024/11/25 9:58:07

阿里云百科分享使用阿里云服务器安装WordPress博客网站教程,WordPress是使用PHP语言开发的博客平台,在支持PHP和MySQL数据库的服务器上,您可以用WordPress架设自己的网站,也可以用作内容管理系统(CMS)。本教程介绍如何在Linux操作系统的ECS实例上搭建WordPress网站。

目录

前提条件

搭建WordPress网站

解析WordPress网站域名

常见问题


前提条件

  • 已创建Linux操作系统的ECS实例,并且手动部署LNMP环境,具体操作,请参见手动部署LNMP环境(CentOS 8)。本教程使用的相关资源版本如下。
    • 实例规格:ecs.c6.large
    • ECS云服务器:aliyunbaike.com/go/ecs
    • 操作系统:公共镜像CentOS 8.1 64位
    • Nginx版本:1.16.1
    • MySQL版本:8.0.17
    • PHP版本:7.3.5
    • WordPress版本:5.4.2
    • ECS实例所在的安全组入方向已添加规则并放行80端口,如果您使用SSH远程连接Linux实例,还需要放行22端口。 具体操作,请参见添加安全组规则。

搭建WordPress网站

  1. 通过ECS控制台,远程连接部署好LNMP环境的ECS实例,配置WordPress数据库。
    1. 远程连接ECS实例。

      详情请参见通过密码认证登录Linux实例。

    2. 可选:切换CentOS 8源地址。

      CentOS 8操作系统版本结束了生命周期(EOL),按照社区规则,CentOS 8的源地址http://mirror.centos.org/centos/8/内容已移除,您在阿里云上继续使用默认配置的CentOS 8的源会发生报错。如果您需要使用CentOS 8系统中的一些安装包,则需要手动切换源地址。

      说明 如果您在准备LNMP环境时已经切换了CentOS 8的源地址,则可以跳过本步骤。

    3. 进入MySQL数据库。使用root用户登录MySQL,并输入密码。密码为您在搭建环境时为数据库设置的密码。
      mysql -uroot -p
    4. 为WordPress网站创建数据库。

      本教程中数据库名为wordpress

      create database wordpress;
    5. 创建一个新用户管理WordPress库,提高安全性。

      MySQL在5.7版本后默认安装了密码强度验证插件validate_password。您可以登录MySQL后查看密码强度规则。

      show variables like "%password%";

      本教程中创建新用户user,新用户密码为PASSword123.

      create user 'user'@'localhost' identified by 'PASSword123.';
    6. 赋予用户对数据库wordpress的全部权限。
      grant all privileges on wordpress.* to 'user'@'localhost';
    7. 使配置生效。
      flush privileges;
    8. 退出MySQL。
      exit;
  2. 下载并解压WordPress,然后移动至网站根目录。
    1. 进入Nginx网站根目录,下载WordPress压缩包。本示例默认安装的是WordPress英文版本。
      cd /usr/share/nginx/html
      wget https://wordpress.org/wordpress-5.4.2.zip
      如果您需安装WordPress中文版本,需运行命令wget https://cn.wordpress.org/latest-zh_CN.zip,下载WordPress中文版本压缩包。同时您需要注意,后续操作中压缩包的名称必须替换为latest-zh_CN.zip。
    2. 解压WordPress压缩包。
      unzip wordpress-5.4.2.zip
    3. 将WordPress安装目录下的wp-config-sample.php文件复制到wp-config.php文件中,并将wp-config-sample.php文件作为备份。
      cd /usr/share/nginx/html/wordpress
      cp wp-config-sample.php wp-config.php
    4. 编辑wp-config.php文件。
      vim wp-config.php
    5. 按i键切换至编辑模式,根据已配置的WordPress数据库信息,修改MySQL相关配置信息,修改代码如下所示。WordPress网站的数据信息将通过数据库的user用户保存在名为wordpress的数据库中。
      // ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
      /** WordPress数据库的名称 */
      define('DB_NAME', 'wordpress');
      
      /** MySQL数据库用户名 */
      define('DB_USER', 'user');
      
      /** MySQL数据库密码 */
      define('DB_PASSWORD', 'PASSword123.');
      
      /** MySQL主机 */
      define('DB_HOST', 'localhost');
    6. 修改完成后,按下Esc键后,输入:wq并回车,保存退出配置文件。
  3. 修改Nginx配置文件。
    1. 运行以下命令打开Nginx配置文件。
      vi /etc/nginx/conf.d/default.conf
    2. 按i键进入编辑模式。

      location /大括号内,将root后的内容替换为WordPress根目录。本示例中根目录为/usr/share/nginx/html/wordpress。

      nginx

      location ~ \.php$大括号内,将root后的内容替换为WordPress根目录。

      nginx

      修改完成后按Esc键,输入:wq保存并退出配置文件。

    3. 运行以下命令重启Nginx服务。
      systemctl restart nginx
  4. 安装并登录WordPress网站。
    1. 在本地物理机上使用浏览器访问ECS实例公网IP,进入WordPress安装页面。
    2. 填写网站基本信息,然后单击安装WordPress。填写信息参数说明:
      • 站点标题:WordPress网站的名称。例如:demowp。
      • 用户名:登录WordPress时所需的用户名,请注意安全性。例如:testwp。
      • 密码:登录WordPress时所需的密码,建议您设置安全性高的密码。例如:Wp.123456。
      • 您的电子邮件:用于接收通知的电子邮件。例如:1234567890@aliyun.com。
    3. 单击登录。
    4. 输入在安装WordPress时设置的用户名testwp和密码Wp.123456,然后单击登录。

      成功进入您个人的WordPress网站。

解析WordPress网站域名

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

  1. 注册域名。

    详情请参见 域名注册基本流程。

  2. 备案。

    如果您的域名指向的网站托管在阿里云中国内地节点服务器,您需要进行备案。如果您是首次备案,可以参考阿里云百科aliyunbaike.com/beian关于备案的说明。

  3. 解析域名。将域名指向实例公网IP。

    域名解析是使用域名访问您的网站的必备环节。具体操作流程,请参见设置域名解析。

  4. 返回ECS控制台,远程连接已搭建WordPress网站的ECS实例,登录MySQL数据库。
    mysql -uroot -p
  5. 切换至WordPress对应的数据库。
    use wordpress;
  6. 将实例公网IP替换为新域名。
    update wp_options set option_value = replace(option_value, 'http://实例公网IP', 'http://www.WordPress.EcsQuickStart.com') where option_name = 'home' OR option_name = 'siteurl';
  7. 退出MySQL。
    exit;

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

常见问题

  • 问题描述:WordPress中设置固定链接后,跳转页面无法访问。

    解决方案:网站设置伪静态有利于搜索引擎收录网站。您在对WordPress站点设置固定链接前,需要先在Nginx服务器中设置伪静态规则。操作步骤如下:
    1. 登录搭建WordPress的ECS实例。
    2. 运行以下命令打开Nginx配置文件。
      vi /etc/nginx/conf.d/default.conf
    3. 按i键进入编辑模式,在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;
      }
      添加完成后按Esc键,并输入:wq并回车,保存退出文件。
    4. 运行以下命令重启Nginx服务。
      systemctl restart nginx
  • 问题描述:WordPress中更新版本、上传主题或插件时,提示需要FTP登录凭证或无法创建目录。

    解决方案:
    1. 登录搭建WordPress的ECS实例。
    2. 运行以下命令打开WordPress配置文件。
      vim /usr/share/nginx/html/wordpress/wp-config.php
    3. 按i键进入编辑模式,在最下方,添加如下代码。
      define("FS_METHOD","direct");
      define("FS_CHMOD_DIR", 0777);
      define("FS_CHMOD_FILE", 0777);
      添加完成后按Esc键,并输入:wq并回车,保存退出文件。
    4. 返回WordPress仪表盘,刷新页面,可解决需要FTP登录凭证的问题。如果仍存在无法创建目录的问题,需再次返回ECS实例,运行以下命令,将网站根目录的权限用户更新为Nginx对应的用户,本示例环境中为nginx用户。
      chown -R nginx /usr/share/nginx/html/wordpress

 本文转自阿里云官方文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/868110.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构-带头双向循环链表的实现

前言 带头双向循环链表是一种重要的数据结构,它的结构是很完美的,它弥补了单链表的许多不足,让我们一起来了解一下它是如何实现的吧! 1.节点的结构 它的节点中存储着数据和两个指针,一个指针_prev用来记录前一个节点…

C语言学习之大端小端的数据存储

小端的数据存储&#xff1a;数据低位存在地址低位&#xff0c;数据高位存在地址高位&#xff1b;大端的数据存储&#xff1a;数据低位存在地址高位&#xff0c;数据高位存在地址低位&#xff1b;图例显示&#xff1a; 验证PC是大端还是小端的代码&#xff1a; #include <st…

安全学习DAY145_主机服务器端口扫描蜜罐、WAF识别

信息打点-主机架构&蜜罐识别&WAF识别&端口扫描 文章目录 信息打点-主机架构&蜜罐识别&WAF识别&端口扫描概述-思维导图本节知识点&#xff1a;识别应用服务器&其他服务协议&#xff1a;端口扫描NmapMasscan意外环境&#xff1a; 识别WAF防火墙WAF解…

宝塔Linux面板升级“获取更新包失败”怎么解决?

宝塔Linux面板执行升级命令后失败&#xff0c;提示“获取更新包失败&#xff0c;请稍后更新或联系宝塔运维”如何解决&#xff1f;新手站长分享宝塔面板升级失败的解决方法&#xff1a; 宝塔面板升级失败解决方法 1、使用root账户登录到你的云服务器上&#xff0c;宝塔Linux面…

lab1 utilities

测试和运行 参考大佬 修改grade-lab-util文件中的python为python3xv6.out这个文件的所有者可能是root&#xff0c;需要修改为用户&#xff0c;sudo chown woaixiaoxiao xv6.out 每完成一个函数&#xff0c;执行下面的步骤在Makefile中加入新增的程序$U/_sleep\make qemu&…

git 使用远端代码强制覆盖本地

有时候会遇到这种情景&#xff0c;我们本地的代码不需要了&#xff0c;需要使用远端的代码强制覆盖&#xff0c;这时候可以使用下面的命令 git fetch --all然后再执行下面的命令&#xff0c;重置为远端的代码&#xff0c;即使用远端的代码将本地覆盖 origin/远端分之名 git re…

Map中compute、putIfAbsent、computeIfAbsent、merge、computeIfPresent使用

目录 putIfAbsent computeIfAbsent computeIfPresent compute merge putIfAbsent 解释&#xff1a;【不存在则添加】&#xff0c;如果map中没有该key&#xff0c;则直接添加&#xff1b;如果map中已经存在该key&#xff0c;则value保持不变 default V putIfAbsent(K key,…

Metasploitable2靶机漏洞复现

一、信息收集 nmap扫描靶机信息 二、弱口令 1.系统弱口令 在Kali Linux中使用telnet远程连接靶机 输入账号密码msfadmin即可登录 2.MySQL弱口令 使用mysql -h 靶机IP地址即可连接 3.PostgreSQL弱密码登录 输入psql -h 192.168.110.134 -U postgres 密码为postgres 输入\…

Python中的lambda函数

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! Python中的lambda函数 在Python中&#xff0c;我们使用lambda关键字来声明一个匿名函数&#xff0c; 这就是为什么我们将它们称为“lambda函数”。 匿名函数是指没有声明函数名称的函数。 尽管它们在语法上看起来不同&a…

【MySQL】并发执行事务可能存在的问题, 事物的四种隔离级别

文章目录 前言一、并发执行事务可能存在的问题1, 脏读问题2, 不可重复读3, 幻读 二、MySQL 的四种隔离级别1, READ UNCOMMITTED 读未提交2, READ COMMITTED 读已提交3, REPEATABLE READ 可重复读 (MySQL 的默认事务隔离级别)4, SERIALIZABLE 串行化 总结 前言 各位读者好, 我是…

百度智能云“千帆大模型平台”升级,大模型最多,Prompt模板最全

1、前言 从ChatGPT正式推出之后&#xff0c;大模型开始逐渐火爆起来&#xff0c;基于大模型的潜力与广泛应用前景&#xff0c;多个厂商也开始在大模型领域进行深耕布局。越来越多的人也开始尝试使用大模型来解决日常工作或生活中的问题&#xff0c;有效地提高了处理问题的效率。…

探讨uniapp的生命周期问题

在uniapp中,生命周期函数分为应用生命周期函数、页面生命周期函数和组件生命周期函数. 1应用声明周期 应用生命周期函数只能在 App.vue 中监听有效&#xff0c;在其他页监听无效。 onLaunch&#xff1a;当uni-app 初始化完成时触发&#xff08;全局只触发一次&#xff09;on…

【变形金刚03】使用 Pytorch 开始构建transformer

一、说明 在本教程中&#xff0c;我们将使用 PyTorch 从头开始构建一个基本的转换器模型。Vaswani等人在论文“注意力是你所需要的一切”中引入的Transformer模型是一种深度学习架构&#xff0c;专为序列到序列任务而设计&#xff0c;例如机器翻译和文本摘要。它基于自我注意机…

【传输层】Tcp协议的原理(二)

文章目录 一、TCP协议原理&#xff08;二&#xff09;总结 一、TCP协议原理&#xff08;二&#xff09; 1.解决TIME_WAIT状态引起的bind失败的方法 我们之前实现tcp服务器的时候发现&#xff0c;服务器经常有时候断开可以立即重启&#xff0c;有时候断开必须换端口号才能重新…

qt事件系统源码-----定时器

qt定时器的使用一般有以下几种方式&#xff1a; 1、直接使用QTimer对象&#xff0c;绑定定时器的timeout信号&#xff1b; 2、使用QTimer的静态方法singleshot方法&#xff0c;产生一个一次性的定时事件 3、在QObject子类中&#xff0c;调用startTimer方法&#xff0c;产生定…

Vue.js从入门到精通:软件开发视频大讲堂

&#x1f482; 个人网站:【工具大全】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 前言 随着Web应用程序的…

nodejs+vue+elementui+express旅游出行指南网站_655ms

本文主要介绍了一种基于windows平台实现的旅游出行指南。该系统为用户找到景点信息和酒店信息提供了更安全、更高效、更便捷的途径。本系统有两个角色&#xff1a;管理员和用户&#xff0c;要求具备以下功能&#xff1a; &#xff08;1&#xff09;用户可以浏览主页了解旅游出行…

2023牛客暑期多校训练营8-C Clamped Sequence II

2023牛客暑期多校训练营8-C Clamped Sequence II https://ac.nowcoder.com/acm/contest/57362/C 文章目录 2023牛客暑期多校训练营8-C Clamped Sequence II题意解题思路代码 题意 解题思路 先考虑不加紧密度的情况&#xff0c;要支持单点修改&#xff0c;整体查询&#xff0…

阿里云服务器安装AMH面板建站教程

本文阿里云百科分享使用阿里云服务器安装AMH面板建站教程&#xff0c;AMH是一套通过Web控制和管理Linux服务器以及虚拟主机的管理系统。您可以使用云服务器ECS安装AMH来搭建PHP网站。本篇教程分别介绍如何在Linux系统实例中部署AMH并快速搭建PHP网站。 目录 前提条件 手动部…

Electron 应用实现截图并编辑功能

Electron 应用实现截图并编辑功能 Electron 应用如何实现截屏功能&#xff0c;有两种思路&#xff0c;作为一个框架是否可以通过框架实现截屏&#xff0c;另一种就是 javaScript 结合 html 中画布功能实现截屏。 在初步思考之后&#xff0c;本文优先探索使用 Electron 实现截屏…