当前位置: 首页 > 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…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言&#xff1a; 在人工智能快速发展的浪潮中&#xff0c;快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型&#xff08;LLM&#xff09;。该模型代表着该领域的重大突破&#xff0c;通过独特方式融合思考与非思考…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1

每日一言 生活的美好&#xff0c;总是藏在那些你咬牙坚持的日子里。 硬件&#xff1a;OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写&#xff0c;"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

【Linux】自动化构建-Make/Makefile

前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具&#xff1a;make/makfile 1.背景 在一个工程中源文件不计其数&#xff0c;其按类型、功能、模块分别放在若干个目录中&#xff0c;mak…...

如何让非 TCP/IP 协议驱动屏蔽 IPv4/IPv6 和 ARP 报文?

——从硬件过滤到协议栈隔离的完整指南 引言 在现代网络开发中,许多场景需要定制化网络协议(如工业控制、高性能计算),此时需确保驱动仅处理特定协议,避免被标准协议(如 IPv4/IPv6/ARP)干扰。本文基于 Linux 内核驱动的实现,探讨如何通过硬件过滤、驱动层拦截和协议栈…...

Async-profiler 内存采样机制解析:从原理到实现

引言 在 Java 性能调优的工具箱中&#xff0c;async-profiler 是一款备受青睐的低开销采样分析器。它不仅能分析 CPU 热点&#xff0c;还能精确追踪内存分配情况。本文将深入探讨 async-profiler 实现内存采样的多种机制&#xff0c;结合代码示例解析其工作原理。 为什么需要内…...