博客搭建篇

首先需要将代码从Git上下载下来,然后需要代码编辑器,用Rider或者visual studio都行。

配置文件

下载项目后,首先找到appsetting.json配置文件 ConnectionStrings用于配置redis数据库,如果没有需要将Program.cs中的删除掉或者注释掉,如果你有redis数据库,填写上数据库地址和密码就行了

builder.Services.AddRateLimit(builder.Configuration);
app.UseRateLimit();

Email用于配置发送邮件的功能,这里写上自己的邮箱地址和邮箱授权码即可,是邮箱授权码,不是密码。

"ConnectionStrings": {
"Redis":"localhost,Password=123"
},

修改key就行了,这是用于jwt令牌生成的配置。

  "SecuritySetting": {
    "Token": {
      "Issuer": "starblog",
      "Audience": "starblog-admin-ui",
      "Key": "13123123123123"
    }

是否启用七牛云,Star为启动,启动的话需要自己去改一下代码链接,不用七牛云则改成star2就行了。

随机图片千牛服务

  "Qiliu":{
    "StarandOff":"Star"
    or
    "StarandOff":"Star2"
  }, 

数据库

博客用的sqlite3数据库,git下载的自带有sqilie3数据库,如果有数据库可视化工具可以直接用我的是数据库,如果你没有且不会操作数据库,那么需要用指令创建一下数据库,并做一些初始化操作。

有VisualStudio的情况

在使用EF Core的Code First模式创建数据库时,可以使用以下步骤来运行Add-Migration指令:

1.打开Visual Studio,并打开你的.NET Core项目。 2.打开Package Manager Console(工具>NuGet Package Manager > Package ManagerConsole 3.在Package Manager Console中,确保默认项目已设置为你的.NET Core项目。4.在Package Manager Console中,运行以下指令:

Add-Migration Init

一旦迁移文件创建成功,你可以运行以下指令来将迁移应用到数据库:

Update-Database

没有VisualStudio的情况

可以直接使用dotnet指令完成数据库构建,在Personalblog.Model目录下执行

dotnet ef migrations add Init
dotnet ef database update

运行成功后在Personalblog.Model目录会有个app.db文件,将他移动到Personalblog中就行了,如果是使用VisualStudio执行的话,默认就是在Personalblog。

PS c:\Users\Lenovo\Desktop\personalblog-master> cd Personalblog.Model
PS c:\UsersLenovo\Desktop\personalblog-master\Personalblog.Nodel> dotnet ef migrations add Init

配置文件和数据库配置完成后,运行起来如图:

可以看到是没有任何文章的。 然后我们在浏览器中访问http://localhost:7031/Article/Init

后台管理系统

可以看到博客是没有图片也没有文章的,需要在后台管理系统中自己上传,同样我们从git上下载项目。 后台管理vue3搭建的,具体配置看GitHub上项目介绍我这里直接运行npm run serve 登录账号就是上面初始化的admin和123456

上传文章

打包上传md文件演示图:

image-20240421002846688

(单篇文章导入)
单个md文件导入 可以直接导入后缀为md的文件上传博客系统
(批量文章文章导入)
打包多个md文件 或者打包单个md文件 实现批量导入文章
单个md文件 即单篇文章(包括图片附件)打包上传,自动导入功能

测试一下文章上传,文章分类默认是没有的,需要再这里自己填写。(填写后下拉再次选择 才能生效

上传图片

在\personalblog-master\Personalblog\wwwroot\media创建如下目录

blog photofraphy Top yasuo yasuo2

|wwwroot下面还有一个temp目录

文章没有图片解决

修改PicLibController.cs中的27行代码:

Arial为windows字体

var font = SystemFonts.CreateFont("Arial"", 50);

之前上传了文章但是没有图片,那是因为图片是单独一个文件夹,不是我们在后台上传的图片在\personalblog-master\Personalblog\wwwroot\media\Top和yasuo中放一张图片试试看.

Top就是置顶文章图片的存放地址 . yasuo则是推荐文章图片的地址

也就是置顶文章的图片是固定的

文章列表显示不安全怎么办

这是因为我在列表跳转的时候加上了https,只需要修改Personalblog.Services下的CategoryService类中GetNodes方法的new ,"https"改成http即可