当前位置: 首页 > news >正文

使用ECS和RDS部署WordPress,搭建个人博客并使用域名访问

目录

一、准备工作

1、准备ECS服务器

2、创建数据库账号和密码

二、部署环境

1、远程连接

2、安装Apache服务

3、部署WordPress

三、对博客的优化并使用域名访问

1、博客的设计优化

1.1 插件的使用

1.2 博客的设计介绍

2、使用域名访问

四、个人博客部署的心得

1、选择合适的实例和规格

2、配置安全组和网络设置

3、安装WordPress和数据库连接

4、配置域名和SSL证书

5、安全和备份策略

6、优化和性能调整

7、学习和持续改进


大家好,收到阿里云社区邀请,今天带来的是使用ECS和RDS部署WordPress,搭建个人博客并使用域名访问!
首先,看一下博客图片;

image.png

地址:http://120.27.128.213
域名地址:http://lingxw.ink
在介绍部署WordPress之前,我用过Hexo搭建过简易的个人博客,如下图:
博客链接:https://lingxw123.gitee.io

image.png

【0成本搭建个人博客】——Hexo+Node.js+Gitee Pages_Lingxw_w的博客-CSDN博客

这是通过Hexo+Node.js+Gitee Pages来完成个人博客的部署,这种方式的博客通过上传到Git,上传博客的方式也很简单。

下面通过尝试ECS和RDS来部署WordPress搭建个人博客并使用域名访问。

一、准备工作

1、准备ECS服务器

首次开通ECS云服务器,需要重置云服务器ECS密码。
重置密码后,必须重启ECS实例,重置的密码才会生效。
接着,我们开始配置安全组:
由于需要使用Apache服务,默认监听80端口,需在ECS实例安全组的入方向添加安全组规则并放行80端口。
点击左侧【安全组】,点击【安全组名称】或右侧【配置规则】,进入规则配置页面。
 

image.png


在入方向【手动添加】访问规则。

image.png

2、创建数据库账号和密码

在 实例列表页 选择目标实例,在实例右侧操作列,单击管理,进入RDS实例详情页。
 

image.png

进行创建账号;

image.png

在实例详情页,单击左侧导航栏的 数据库管理 ,然后单击 创建数据库 。
使用刚刚的账号进行创建;

image.png

设置RDS实例白名单。单击左侧导航栏的 白名单与安全组,在白名单设置中点击修改。输入刚刚的ECS服务器的IP。

image.png

二、部署环境

1、远程连接

首先,通过远程登陆;我这里是使用软件登陆的,也可以通过Workbench远程连接。
 

image.png

都是一样的。

2、安装Apache服务

在ECS服务器上,执行以下命令,安装Apache服务及其扩展包。

image.png

image.png

执行以下命令,启动Apache服务并设置服务开机自启动。

image.png

打开浏览器输入ECS服务器的公网IP,如果显示如下图的测试页面表示Apache服务安装成功。

image.png

3、部署WordPress

在部署之前我先安装了Nginx;

image.png

WordPress是使用PHP语言开发的博客平台。参考以下操作安装PHP。
执行以下命令:

yum -y install php-fpm php-gd php-mysqlnd php
echo "<?php phpinfo(); ?>" > /var/www/html/ph
systemctl restart httpd

安装成功的界面:

image.png

记得删除phpinfo.php测试文件,消除数据泄露风险。

image.png

下面是安装和配置WordPress;
先安装 wordpress 安装包并解压到 /home/wwwroot

wget https://cn.wordpress.org/latest-zh_CN.zip && unzip latest-zh_CN.zip -d /home/wwwroot

如果不用RDS,可以安装登录本地MySQL并创建wordpress数据库:

$ mysql -u root -p
Enter password: 
MySQL > create database wordpress;

 修改配置后验证Niginx;

image.png

打开http://ip/wp-admin/setup-config.php 可以看到这个界面;

image.png

现在开始!

image.png

这里我们打开RDS数据库,RDS数据库的外网连接地址可以在【RDS管理控制台-实例详情-数据库链接】查看,如下图。创建外网连接。创建完记得刷新!

image.png

此时,就可以连接数据库了;

image.png

下面就是著名的WordPress五分钟安装程序!简单地填写下面的表单,来开始使用这个世界上最具扩展性、最强大的个人信息发布平台。

image.png

点击安装成功;

image.png

进入ip/wp-login.php 来进行登陆;

image.png

登陆后的界面;

image.png

我们首先尝试已经有的主题;
点击启用;

image.png

接着访问自己的IP;

image.png

这里也可以安装LNMP:http://t.csdn.cn/m8fX6

三、对博客的优化并使用域名访问

我使用的是开源的Sakura主题;

1、博客的设计优化

1.1 插件的使用

我并不推荐大家使用WordPress自带的编辑器,不太好用,WordPress自带的有代码块这个功能但是不会高亮,如果我们选择的主题中有代码块高亮这个功能,使用WordPress代码块会导致,主题的代码语法高亮无法正确识别我们代码的类型。
我们用Markdown来代替WordPress的编辑器。

  • WP Githuber MD

    image.png

     

    image.png

  • Post Views Counter安装了一个统计阅读量的插件

    image.png

  • Simple Custom CSS 可以自定义CSS代码
     

    image.png


    在这里简要介绍三个插件, wordpress的插件很多,大家可以自己体验一下。

    1.2 博客的设计介绍

  • 随机封面图
    每次刷新都会是新的图片的封面;
     

    image.png

    image.png

  • 个人社交网站的模块;
    添加了个人的微信、qq、邮箱等信息;

    image.png

  • 三个专栏的介绍
    包括数据挖掘专栏,机器学习专栏,复杂网络的专栏,后面再逐步完善。

    image.png

  • 个人介绍的界面;

    image.png

  • Lazyload;
    使用了开源库jQuery-Lazyload,按需加载图片,优先加载缩略图或占位图,当图片显示在viewport 上时才加载原图,提升网页加载速度。

    image.png

  • 进度轴;

    image.png

  • 前端主题切换;
    可以通过右下角的按钮切换前端主题。

    image.png

  • 评论插图;

    image.png

  • 评论支持 Bilibili 表情;

    image.png

  • 定制登陆及后台界面

    image.png

2、使用域名访问

下面我们尝试用域名来访问博客;
首先我们得去买一个阿里云域名 https://wanwang.aliyun.com/?spm=5176.28055625.J_4VYgf18xNlTAyFFbOuOQe.146.240b154ajfcIV9;

image.png

选择自己需要购买的域名;阿里云的很便宜,我是之前买的一年才几十块钱。
我这里选择购买的是.ink;
地址:Lingxw_w_Blog

image.png

买完之后需要进行阿里云域名解析,根据提示去添加 DNS解析规则。
 

image.png

我这里因为还在备案中,完成之后就可以通过域名访问自己的个人博客了。

四、个人博客部署的心得

1、选择合适的实例和规格

在开始之前,我花了一些时间研究了不同的ECS实例和RDS数据库实例。根据我的需求,我选择了一款适中的ECS实例,以保证博客的性能和稳定性。这里选择试用的版本就够用了,对于RDS,我选择了MySQL数据库引擎,因为它被广泛用于WordPress等应用,并且有很好的社区支持。这里就要强调一下RDS的优势了,我只能说非常好用,因为如果本地部署MYsql的话,会遇到一些Mysql连接的问题,很麻烦,而且如果你买数据库的话,还可以练一下SQL语句,做一个SQL Boy。

2、配置安全组和网络设置

在部署ECS和RDS时,确保正确配置了安全组和网络设置。这一步骤至关重要,以确保服务器和数据库的安全。我设置了适当的入口规则,只允许必要的端口对外开放,同时限制了IP访问范围,以防止未经授权的访问。这里举个例子,比如3306端口和80端口,如果不设置,就会在连接时出现问题。

3、安装WordPress和数据库连接

一旦服务器和数据库都准备就绪,我开始了WordPress的安装。通过SSH远程连接到ECS实例,我使用了一些基本的Linux命令来安装所需的软件和依赖。我是使用的国产软件Finlshell,非常好用。然后,我在RDS上创建了一个新的数据库,并在WordPress配置文件中添加了正确的数据库连接信息。

4、配置域名和SSL证书

为了让博客更专业,我购买了一个域名,并通过阿里云的域名服务进行了配置。同时,我也为博客启用了SSL证书,以确保访问安全加密。这样不仅可以提升用户信任度,还有助于SEO优化。这里备案的时间有些长,可能是周末的原因,工作日才审核。

5、安全和备份策略

安全始终是首要任务。我定期更新操作系统和软件,确保及时修补安全漏洞。此外,我设置了定期自动备份,以防止数据丢失。这对于长期维护博客至关重要。对了,可以安装防止攻击的WordPress插件,来保证博客和个人信息不被攻击。

6、优化和性能调整

在博客搭建完成后,我使用了一些优化技巧来提升性能。我安装了缓存插件,压缩了图像,并使用了CDN(内容分发网络)来加速页面加载。这些举措不仅提升了用户体验,还有助于SEO排名。

7、学习和持续改进

在整个搭建过程中,我不断学习新知识,解决各种问题。遇到困难时,我阅读了阿里云的文档和在线论坛,也向朋友请教。持续学习和改进是保持博客健康的关键。就像博客的主页的第一句,人生不是轨道,而是无边的旷野。继续加油吧!

总的来说,通过使用阿里云的ECS和RDS,我成功地搭建了个人博客,积累了宝贵的经验。这个过程不仅让我更加了解了云计算和服务器管理,还提升了我解决问题的能力。我将继续努力改进博客,分享我的思考和经验,希望能够对其他人有所帮助。如果你也想搭建自己的博客,我鼓励你积极尝试并不断学习,相信你也会有类似的收获。人生不是轨道,而是无边的旷野。继续加油吧!

相关文章:

使用ECS和RDS部署WordPress,搭建个人博客并使用域名访问

目录 一、准备工作 1、准备ECS服务器 2、创建数据库账号和密码 二、部署环境 1、远程连接 2、安装Apache服务 3、部署WordPress 三、对博客的优化并使用域名访问 1、博客的设计优化 1.1 插件的使用 1.2 博客的设计介绍 2、使用域名访问 四、个人博客部署的心得 1…...

C# Winform 简单排期实现(DevExpress TreeList)

排期的需求在很多任务安排的系统中都有相应的需求&#xff0c;原生的Winform控件并未提供相应的控件&#xff0c;一般都是利用DataGridViewTreeView组合完成相应的需求&#xff0c;实现起来比较麻烦。用过DevExpress控件集的开发者应该知道&#xff0c;DevExpress WinForm提供了…...

2023高教社杯国赛数学建模C题思路+模型+代码(9.7晚开赛后第一时间更新)

目录 1.C题思路模型&#xff1a;9.7晚上比赛开始后&#xff0c;第一时间更新&#xff0c;获取见文末名片 2.竞赛注意事项&#xff1a;包括比赛流程&#xff0c;任务分配&#xff0c;时间把控&#xff0c;论文润色&#xff0c;已经发布在文末名片中 3.常用国赛数学建模算法 …...

QT6中添加串口模块SerialPort最简单方法

qt6.2.3以上版本已经开始支持SerialPort包了&#xff0c;不用在傻傻的自己去编译包了。 在安装的时候勾选SerialPort即可。 等着安装完即可。 如果已经安装完了的小伙伴&#xff0c;可以用 从新打开维护 选择增加或者删除组件 即可从新选择组件...

LeetCode每日一题:1123. 最深叶节点的最近公共祖先(2023.9.6 C++)

目录 1123. 最深叶节点的最近公共祖先 题目描述&#xff1a; 实现代码与解析&#xff1a; dfs 原理思路&#xff1a; 1123. 最深叶节点的最近公共祖先 题目描述&#xff1a; 给你一个有根节点 root 的二叉树&#xff0c;返回它 最深的叶节点的最近公共祖先 。 回想一下&…...

Oracle查看锁表和正在执行的Sql

查看当前被锁的表&#xff08;需要有管理员权限&#xff09;&#xff1a; --查看锁表进程SQL语句1&#xff1a; select sess.sid,sess.serial#,lo.oracle_username,lo.os_user_name,ao.object_name,lo.locked_modefrom v$locked_object lo, dba_objects ao, v$session sesswh…...

Linux centos 卸载 ceph

在CentOS上卸载Ceph的操作步骤&#xff1a; 1. 停止Ceph集群&#xff1a;首先&#xff0c;你需要停止Ceph集群中的所有服务。在每个节点上运行以下命令来停止所有服务 systemctl stop ceph.target 2. 卸载Ceph软件包&#xff1a;在每个节点上&#xff0c;使用yum包管理器卸载C…...

ElementUI浅尝辄止34:Radio 单选框

在一组备选项中进行单选 1.如何使用&#xff1f; 由于选项默认可见&#xff0c;不宜过多&#xff0c;若选项过多&#xff0c;建议使用 Select 选择器。 //要使用 Radio 组件&#xff0c;只需要设置v-model绑定变量&#xff0c;选中意味着变量的值为相应 Radio label属性的值&…...

开始MySQL之路——MySQL三大日志(binlog、redo log和undo log)概述详解

前言 MySQL实现事务、崩溃恢复、集群的主从复制&#xff0c;底层都离不开日志&#xff0c;所以日志是MySQL的精华所在。只有了解MySQL日志&#xff0c;才算是彻底搞懂MySQL。 日志是mysql数据库的重要组成部分&#xff0c;记录着数据库运行期间各种状态信息。mysql日志主要包…...

router基础使用

1.安装router npm i vue-router3 安装后 2.写出路由界面 接着 3.配置路由 import Vue from vue import VueRouter from vue-router import Home from "../views/Home.vue" import About from "../views/About.vue" Vue.use(VueRouter)const routes …...

亚马逊云科技人工智能内容审核服务:大大降低生成不安全内容的风险

生成式人工智能技术发展日新月异&#xff0c;现在已经能够根据文本输入生成文本和图像。Stable Diffusion是一种文本转图像模型&#xff0c;可以创建栩栩如生的图像应用。通过Amazon SageMaker JumpStart&#xff0c;使用Stable Diffusion模型轻松地从文本生成图像。 尽管生成式…...

2023年高教社杯数学建模思路 - 案例:最短时间生产计划安排

文章目录 0 赛题思路1 模型描述2 实例2.1 问题描述2.2 数学模型2.2.1 模型流程2.2.2 符号约定2.2.3 求解模型 2.3 相关代码2.4 模型求解结果 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 最短时…...

算法工程题(二叉树递归)

* 题意说明&#xff1a; * 给你两棵二叉树的根节点 p 和 q &#xff0c;编写一个函数来检验这两棵树是否相同。 * 如果两个树在结构上相同&#xff0c;并且节点具有相同的值&#xff0c;则认为它们是相同的。 * * 示例 1&#xff1a; * 输入&#xff1a;p [1,2,3]…...

“指针跃动”受邀参加全球贸易服务峰会

“指针跃动”受邀参加全球贸易服务峰会 有“服”同享 共赢未来 引子 在全球化日益盛行的今天&#xff0c;贸易不再仅仅是物质的交流&#xff0c;更涉及到服务、理念、文化和科技的共享。中国国际服务贸易交易会全球贸易服务峰会&#xff0c;就是这个趋势的集中体现。在这次峰会…...

Go Web开发的高级技巧和最佳实践

Go Web开发的高级技巧和最佳实践 欢迎来到Go语言Web开发的高级技巧和最佳实践指南。在这篇文章中&#xff0c;我们将深入探讨Go语言Web应用程序的高级主题&#xff0c;包括性能优化、安全性、部署和微服务架构。 性能优化 性能是Web应用程序的关键因素之一。Go语言以其出色的…...

Verilog 基础知识

1、数值种类 Verilog HDL 有下列四种基本的值来表示硬件电路中的电平逻辑&#xff1a; 0&#xff1a;逻辑 0 或 “假”1&#xff1a;逻辑 1 或 “真”x 或 X&#xff1a;未知 x 意味着信号数值的不确定&#xff0c;即在实际电路里&#xff0c;信号可能为 1&#xff0c;也可能…...

element ui 表格组件与分页组件的二次封装

目录 组件封装 parseTime函数 debounce 函数 页面使用 【扩展】vue 函数式组件 函数式组件特点&#xff1a; 函数式组件的优点&#xff1a; 【扩展】vue中的render函数 一、初步认识render函数 二、为什么使用render函数 三、render函数的解析 组件封装 这段代码是一…...

递归算法学习——有效的数独,解数独

一&#xff0c;有效的数独 1.题意 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 &#xff0c;验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。&#x…...

基于Alexnet深度学习网络的人员口罩识别算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 file_path1 test\mask\;% 图像文件夹路径 %获取测试图像文件夹下所有jpg格式的图像文件…...

【Java Web】利用Spring整合Redis,配置RedisTemplate

1. 在config中加入RedisConfig配置类 package com.nowcoder.community.config;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFacto…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解&#xff0c;涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容&#xff0c;并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念&#xff08;ACID&#xff09; 事务是…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

为什么要创建 Vue 实例

核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...