分享我做Dotnet9博客网站时积累的一些资料
从2019年使用WordPress搭建Dotnet9网站,到现在手撸代码开发,介绍中间使用的一些资源,绝无保留,希望对大家有用。
1. 申请域名、搭建WordPress网站
时间点:2019年11月
申请Dotnet9
域名,讲个实话,站长是从Dotnet1试到Dotnet9的,前面8个都被注册了,哈哈。
网站使用WordPress的第三方收费主题JustNews主题搭建:
JustNews主题专为博客、自媒体、资讯类的网站设计开发,自适应兼容手机、平板设备,支持前端用户中心,可以前端发布/投稿文章,同时主题支持专题功能,可以添加文章专题。
1.1 经典风格
这种风格挺适合技术类网站,内容比较紧凑,一眼展示内容较多。
1.2 风格二
这种风格是站长去年之前一直选用的风格,用了将近2年,看着比较大气,貌似没有保留网站最后的截图,还是上演示截图吧。
2. 开始调研网站开发技术栈
时间点:2021年10月
这是一个重要时间点,前面两年站长基本就是在维护上面的WordPress搭建的网站。
关注Dotnet9网站的网友也经常问我,这个网站是用什么语言开发的,是否开源,想学习一下怎么开发网站。
陆陆续续站长也有自己开发网站的想法,但一直未付诸行动,毕竟自己技术栈主要在C/S,B/S也只是偶尔客串。
所以这个时候就开始调研网站开发技术栈,这首先就选择了Flutter Web,并参考油管一些视频做了个首页展示:
选择Flutter Web,因为站长在公司也在调研Flutter开发Mac项目,另一个就是为了它的跨平台特性,为了后面做桌面和App铺路,但目前Flutter Web是还不太成熟的:
目前最不适合选用的技术,首次加载2MB左右的Flutter js库,2、30秒加载白屏等待,有做SEO的第三方插件,但不成熟,就和选Flutter做桌面一样,需要再等等...
3. 使用ASP.NET Core MVC + Bootstrap开发网站
时间点:2021年12月
源码:https://github.com/dotnet9/lequ/tree/main/src/dotnet_blog
这应该是最适宜做需要SEO类型的网站选用的技术栈,个人感觉单体就好。
站长以前做B/S,要么只做ASP.NET Core Web API,或者加上前端Vue(vue-element-admin),React(Ant Design Prop),ASP.NET Core MVC是还没有接触过的,所以全网找视频学习。
怀着找有现成博客代码的教学视频目标,在百度、谷歌找了个遍,终于找到了一个视频网址:udemy.com,这个网址有不少同学在上面学习过吧,全球的教学视频都有,中文、英文、其他语言:
我找到了一个土耳其老师的视频,正好是使用ASP.NET Core MVC 5
教授博客网站开发,正好对我路子,当时花了19.9$来着,还是有点小贵,不过学到了真东西,他基本使用的三层架构开发的,建议初学MVC的同学可以看看,这里发截图和链接不是推荐买哈,后面我接着讲。
当然站长不全是按他的教学视频做,有些代码也参考了老张的Blog.Core开发的,建议收藏老张的博客园,有兴趣的同学可以看看他的博客,站长18年底开始看的老张博客入门的B/S开发,这应该是全网最全的B/S入门系列教程了:.NET CORE Web API + Vue:
- 博客园 [老张的哲学]: https://www.cnblogs.com/laozhang-is-phi/
站长在看土耳其老师的视频和参考老张的Blog.Core做了一个版本的博客前台展示后,在油管发现了土耳其老师的账号,他新开了一个视频系列,也是讲解ASP.NET CORE MVC 5.0开发博客系统,只是主题不同,使用的技术可能更新了,有150集,站长追了80几集,后面没看了,和前面收费的类似,有需求的朋友可不用买收费视频(当然支持是可以的),直接看他最新的博客开发视频学习吧。
语言不是障碍哈,油管可以做语言翻译,站长有时是2倍速观看,边看边敲代码学习,食用效果更佳。
4. Abp vNext + Blazor Server开发
时间点:2022年01月
站长在前面学习MVC的过程中,已经把前台做了个大概了,有主题切换、多语言切换。
在2022年01月,站长公司有个项目,有使用Abp vNext + Blazor Server开发项目的需求,遂在公司学习技术,晚上加班加点用新学的技术练手做Dotnet9网站前台,
源码:https://github.com/dotnet9/Dotnet9/tree/abp-blazor-server
学习地址:https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=BlazorServer&DB=EF
总结:
Abp vNext太重了,Hello World
运行内存400MB左右,个人手撸CRUD比较费时,即使有代码生成器,也不应该选用这种方式做博客网站。
但不妨碍大家使用Abp vNext开发企业级项目哈,社区有不少Abp vNext的开源项目,大家可关注这个Github账号:EasyAbp Team
- EasyAbp Team:https://github.com/EasyAbp
5. 纯用Blazor Server开发网站
时间点:1月~2月
上面未再用Abp vNext做个人项目的原因已经提了个人观点,所以从Blazor Server Hello Word开始又重新搭建网站了。
Blazor组件库使用的 Masa Blazor: https://masa-blazor-docs-dev.lonsid.cn/
与第4版Abp vNext集成的Blazor Server相比,当时是工作需要练手选择的。这次选原生的Blazor Server,对做.NET的我来说,应该是仅次于MVC的选择吧。
说实话,找工作靠Blazor可能性是很小的,但个人玩是非常爽的,这里学习Blazor可看下站长当时翻译的一个台湾小哥的系列文章:学Blazor,站长用Blazor这个版本还写了2个在线小工具,上线了一段时间,代码可参考:
后面也没有继续坚持选择Blazor Server开发个人网站,站长主要有这个考量:Blazor使用的signalR做长连接,实时性较好,但对客户端网络要求较高,网络稍差,可能就与服务器断开了连接,对用户使用体验影响较大,站长也不想继续折腾下去,所以后面又选择了MVC开发个人网站。
小插曲:当时中间有用 .NET CORE Web API搭配Vue开发网站,因为老张的新书上市了,站长上手买了一本,跟着做了后端和前台首页,尝了个鲜,前后端分离,前端Vue比较熟用起来也很爽,稍微有点麻烦,没有MVC利索。
6. 现在的开发版本
时间点:2022年03月至今(2022年05月03号)
第一次上线时间:2022年04月01号
源码:https://github.com/dotnet9/Dotnet9
折腾回MVC做网站,现在网站前台基本成型了,前台前端在网上扒的一个主题,后面考虑在淘宝付费找个设计师美化一下:
首页:
专辑之一:开源WPF
分类之一:Blazor
前台使用的ASP.NET Core MVC开发,ORM使用的EF Core,MVC可以得到完美的SEO支持,再也不用担心百度、谷歌的收录问题了。
网站数据做了个数据种子,目前每次有更新需要删库、重新初始化,后台正在开发中,参考的Panda这个项目正在做后台,后台前端使用的Vue 3.0 + Element Plus:
最后来个后台前端动图结束本文:
本文持续更新,欢迎关注。
分享我做Dotnet9博客网站时积累的一些资料的更多相关文章
- [转载]关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析
CSDN:http://blog.csdn.net/ cnblog: http://www.cnblogs.com/ iteye: http://www.iteye.com/blogs/ 51cto: ...
- 关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析
http://blog.csdn.net/pkucl1/article/details/6629819 CSDN: http://blog.csdn.net/ cnblog: http://www ...
- Hexo+Github: 博客网站搭建完全教程(看这篇就够了)
本篇教程首次发布在个人博客:sunhwee.com,想要获得最佳阅读体验,欢迎前往,建议用电脑查看教程文档. # 阅读须知 注意,这篇文章篇幅较长,主要针对新手,每一步很详细,所以可能会显得比较啰嗦, ...
- 【实战】如何通过html+css+mysql+php来快速的制作动态网页(以制作一个博客网站为列)
一.开发环境的搭建 (1)apache+php+mysql环境搭建 因为要用apache来做服务器,mysql作为数据库来存储数据,php来写代码以此实现网页与数据库的交互数据,所以需要下载上述软件, ...
- 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 阿里云+wordpress搭建个人博客网站
[正文] 在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识 ...
- Django搭建博客网站(三)
Django搭建博客网站(三) 第三篇主要记录view层的逻辑和template. Django搭建博客网站(一) Django搭建博客网站(二) 结构 网站结构决定我要实现什么view. 我主要要用 ...
- 基于SpringBoot从零构建博客网站 - 确定需求和表结构
要确定一个系统的需求,首先需要明确该系统的用户有哪些,然后针对每一类用户,确定其需求.对于博客网站来说,用户有3大类,分别是: 作者,也即是注册用户 游客,也即非注册用户 管理员,网站维护人员 那么从 ...
- 使用vue全家桶制作博客网站
前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...
随机推荐
- java-规约-集合
/** * 1 * @hashCode&equals的处理: * 1-只要覆写了equals,必须复写hashCode. * 2-因为Set存储的是不重复的对象,依据hashCode和equa ...
- Java BlockingQueue是什么?
Java BlockingQueue是一个并发集合util包的一部分.BlockingQueue队列是一种支持操作,它等待元素变得可用时来检索,同样等待空间可用时来存储元素.
- 分布式集群中为什么会有 Master?
在分布式环境中,有些业务逻辑只需要集群中的某一台机器进行执行,其他的机 器可以共享这个结果,这样可以大大减少重复计算,提高性能,于是就需要进行 leader 选举.
- 为什么需要域驱动设计DDD?
我们需要 DDD 的因素 – 微服务面试问题
- input 输入框只能输入数字,一行代码解决,兼容谷歌 火狐
<input id="mobile" name="mobile" type="text" onkeyup="this.val ...
- leetcode_9回文数
给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 例如,121 是回文,而 123 不是. 来 ...
- ubuntu+ROS安装turtulebot3
0 简介 Turtlebot是一种室内移动机器人,搭载激光传感器,使机器有精确的距离感知能力.通过搭建仿真环境,可以在没有硬件支持的情况下进行仿真和编程,并熟悉ros系统.环境使Ubuntu16.04 ...
- Linux中一切皆文件
谈一谈Linux中一切皆文件 1. Linux中所有内容都是以文件的形式保存和管理,即:一切皆文件. 普通文件是文件. 目录(在win下称为文件夹)是文件. 硬件设备(键盘.硬盘.打印机)是文件. 套 ...
- Altium_Designer PCB文件的绘制(上:PCB基础和布局)
PCB设计基础知识 PCB面板 在PCB设计中,最重要的一个面板就是"PCB面板".该面板的功能主要是对电路板中的各个对象进行精确定位,并以特定的效果显示出来.该面板还可以对各种对 ...
- CSS: 给表格的第一列和最后一列不同的样式
table td:first-child { width:160px; height:20px; border:solid 1px Black; padding:5px; text-align:cen ...