使用WTM框架创建博客系统后台并在云服务器发布
阅读导航
- 关于lqclass.com
- 博客后台前后端部署
- 2.1 已部署访问链接
- 2.2 nginx 部署
- 2.2.1 后台后端发布
- 2.2.2 后台前端发布
- 2.2.3 云服务器部署
- 下次分享
1. 关于lqclass.com
lqclass.com是新建博客网站的域名,博客网站站名暂定乐趣Class,前期边开发边分享开发成果。
2. 博客后台前后端部署
2.1 已部署访问链接
先给出后台前后端访问链接吧:
- 后台前端
http://admin.lqclass.com/
测试账号与密码同名:lqclass.com
- 后台后端
http://api.lqclass.com/swagger/index.html
对部署细节感兴趣的朋友可继续阅读后面的内容。
前后端部署,对常做B/S开发的朋友来说,应该是很简单,我这只做下简单记录,技术交流请阅读原文留言,因为本号没有留言功能...
2.2 nginx 部署
博客系统正在开发,部署暂时未上Docker,毕竟我不熟,Nginx倒是接触过几回了,来日方长,不着急。
2.2.1 后台后端发布
使用WTM创建的后端,目前框架最高只能选到.NET Core 3.1,.NET 5.0还未支持。
.NET Core的发布很方便,只需要选择主工程,右键点击“发布”,弹出发布配置界面(下面是我的发布配置),选择的部署模式是框架依赖,服务器上只需要安装.NET Core运行时即可(当然也可以选择独立发布,运行时都不用安装):

将打包发布生成的文件拷贝到服务器,生成的目录是:
lqclass.com\src\LQClass.Admin\LQClass\bin\Release\netcoreapp3.1\publish
服务器上具体存放的目录,2.2.3后面接着说。
2.2.2 后台前端发布
前端发布也方便,一句命令:
npm run build
完事,将前端发布生成的文件拷贝到服务器,生成的目录是:
lqclass.com\src\LQClass.Admin\LQClass\ClientApp\dist
服务器上具体存放的目录,2.2.3接着就讲。
2.2.3 云服务器部署
买了一个Windows Server 2016的云服务器,部署比较方便。
部署步骤:
- 下载 nginx,解压到某目录。
http://nginx.org/en/download.html
- 将后台前后端发布生成的文件存放在nginx的html目录中,目录结构如下:

- admin:后台前端Web文件,使用
WTM生成的vue前端; - api:后台后端文件,.NET Core 3.1 Web API,计划也做为前台后端,使用
WTM生成的后端;
api后端文件不是必须放在nginx目录下,只是为了方便管理,运行后端时直接双击运行LQClass.exe即可,用nginx做反向代理。
- web:前台前端,目录只是vue cli创建的空项目,目前也可以访问的,只是没多大意义
访问地址:
lqclass.com
- 配置
nginx-1.19.5\html\nginx.conf
一级域名、二级域名创建及关联云服务器IP,DNS解析等请在云服务器控制台那边折腾,这个就不详说了。
下面是nginx的配置,站长折腾了好一会儿,因为不熟,问了Dotnet9技术交流群的一些大佬,然后折腾出来的,配置的可能有点啰嗦,有建议欢迎留言哦,配置注释我直接写在下面配置文件中:
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80; // 80端口
server_name lqclass.com; // 前台对外访问域名
location / {
root html/web; // 前台发布文件目录
index index.html index.htm;
}
}
server {
listen 80; // 80端口
server_name api.lqclass.com; // 后台后端对外访问域名
location / {
proxy_pass http://127.0.0.1:5000; // nginx反向代理的后端地址,双击运行后端本地的访问地址,外网通过api.lqclass.com可以代理到该地址
}
}
server {
listen 80; // 80端口
server_name admin.lqclass.com; // 后台前端对外访问域名
location / {
root html/admin; // 后台前端发布文件目录
index index.html index.htm;
}
location /api {
proxy_pass http://127.0.0.1:5000/api; // 后台前端访问后端接口时的代理地址,使得nginx可以处理跨域的问题
}
}
}
- 双击nginx.exe,外网即可访问
乐趣Class的前后台前端、后端了,访问地址见2.1。
3. 下次分享
目前博客系统的后台前后端使用WTM搭建,为了后面开发博客系统前台,站长决定先熟悉WTM的已有API接口,正在使用WPF重构后台客户端(.NET 5),尽量仿照后台前端风格及功能,比如登录页面:


文末资源分享
- 回复数字【01】:获取DotNet技术资料
- 回复数字【02】:获取Java技术资料
- 回复数字【03】:获取Android技术资料
- 回复数字【04】:获取C++技术资料
- 回复数字【05】:获取Qt技术资料
- 回复数字【06】:获取React资源
- 添加号主微信号【dotnet9】:备注【入群】加入与大佬们的技术交流
- 添加QQ群【771992300】:备注【Dotnet9】加入技术交流,无人数上限、有资源共享
时间如流水,只能流去不流回。
- 公众号:Dotnet9
- 号主微信号:dotnet9
- 仓库地址:lqclass.com
- 本文Markdown、pdf、ppt:点击下载
- 作者及编辑:沙漠之尽头的狼
- 日期:2020-12-26
使用WTM框架创建博客系统后台并在云服务器发布的更多相关文章
- 博客系统-后台页面搭建:eazy
业务分析:布局为四个模块上边是系统描述,左边是导航菜单,中间是每个窗口的内容,下边是版权信息 点击左边的导航按钮,在右边窗口显示 代码: <%@ page language="java ...
- Hexo博客部署到腾讯云服务器全过程(Nginx,证书,HTTPS),你要的这里都有
背景 说来也惭愧,博客已经搭建很久了,一直免费的部署在 Coding 和 Github Pages 上,前者迁移到腾讯云 Serverless,导致原有的配置始终有问题,没时间仔细研究,刚好腾讯服务器 ...
- 在云服务器搭建WordPress博客(一)实现云服务器与域名的绑定
随着云的兴起,越来越多的人选择在云服务器上搭建自己的博客,比较著名的开源博客管理系统当属WordPress了,那么怎么在服务器上搭建WordPress呢? 我们需要让别人能够访问我们的博客,就比如输入 ...
- 基于express+mongodb+pug的博客系统——后台篇
上一篇介绍了模板引擎pug.js的用法,这一篇就主要写后台逻辑了. 后台的大部分的功能都有了,只是在已经登录的状态下,前台和后台的逻辑处理还不是很完善. 先上几张图吧,仿旧版的简书,改了下UI,因为没 ...
- 【blog】推荐一个博客系统后台管理模板 - pinghsu
pinghsu https://github.com/chakhsu/pinghsu
- 从零开始,搭建博客系统MVC5+EF6搭建框架(4)下,前后台布局实现、发布博客以及展示。
一.博客系统进度回顾 目前已经完成了,前台展示,以及后台发布的功能,最近都在做这个,其实我在国庆的时候就可以弄完的,但是每天自己弄,突然最后国庆2天,连电脑都不想碰,所以就一直拖着,上一篇写了前端实现 ...
- 三分钟入坑指北 🔜 Docsify + Serverless Framework 快速创建个人博客系统
之前由于学摄影的关系,为了提高自己的审美,顺便锻炼下自己的英文能力,翻译了不少国外艺术类的 文章.最近一直想搭一个个人博客来存放这些内容,又懒得折腾建站,遂一直搁置. 直到偶然发现了 docsify ...
- 欢迎阅读daxnet的新博客:一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统
2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为"希赛网" ...
- 一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统
2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为“希赛网”)个人空间发布过一些 ...
- 基于Microsoft Azure、ASP.NET Core和Docker的博客系统
欢迎阅读daxnet的新博客:一个基于Microsoft Azure.ASP.NET Core和Docker的博客系统 2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客 ...
随机推荐
- Python中的协程、线程和进程
一.协程与多线程和多进程一起使用有什么不同 协程.多线程和多进程都是实现程序并发执行的方法,不过它们在工作方式和适合的应用场景上存在一些区别. 1.协程(Coroutine) 协程是在单一线程 ...
- 从0开始学微信逆向开发(android版)——第一栏
首先给大家普及一下啥叫微信逆向开发,以及微信逆向开发能做什么: 场景1:小明是做微商的,他每天需要加很多很多的好友.然后他会通过微信的各种渠道去添加好友,比如(附近的人.摇一摇.漂流瓶.手机号搜索等) ...
- BFS(一)单词接龙
对应 LeetCode 127 单词接龙 问题定义 给定一个字典序列 wordList,一个初始的单词 beginWord 和一个目标单词 endWord,现在要求每次变换满足以下条件将 beginW ...
- Base64编码:数据传输的安全使者
Base64编码是一种将二进制数据转换为可传输的文本表示形式的方法,它在全球范围内被广泛应用于网络通信.数据存储和传输等领域.本文将从多个方面介绍Base64编码的原理.应用及其在现实场景中的优势,帮 ...
- Asp .Net Core 系列: 集成 Consul 实现 服务注册与健康检查
目录 什么是 Consul? 安装和运行 Consul Asp .Net Core 如何集成 Consul 实现服务注册和健康检查 Consul.AspNetCore 中的 AddConsul 和 A ...
- flutter常用的设计模式
单例模式(Singleton Pattern): 确保一个类只有一个实例,并提供一个全局访问点. 工厂模式(Factory Pattern): 定义一个创建对象的接口,但让子类决定具体实例化哪个类:常 ...
- 训练千亿参数模型的法宝,昇腾CANN异构计算架构来了~
摘要:盘古的训练以「昇腾AI处理器」为基座,同时借助了「CANN 异构计算架构」,让硬件算力得以充分释放,大大缩短了训练时间! 2021年4月,"华为云盘古大模型"一炮走红AI人工 ...
- 详解4种微服务框架接入Istio方案
摘要:使用k8s和lstio网格进行开发,将服务发现.服务治理留给基础设施,可以将开发人员从复杂的服务中解脱出来,专注于业务开发,是当前来说比较好的解决方案. 本文分享自华为云社区<传统微服务框 ...
- 解析WeNet云端推理部署代码
摘要:WeNet是一款开源端到端ASR工具包,它与ESPnet等开源语音项目相比,最大的优势在于提供了从训练到部署的一整套工具链,使ASR服务的工业落地更加简单. 本文分享自华为云社区<WeNe ...
- 超大超详细图解,让你掌握Spark memeoryStore内存管理的精髓
摘要:memoryStore主要是将没有序列化的java对象数组或者序列化的byteBuffer放到内存中. 本文分享自华为云社区<spark到底是怎么确认内存够不够用的?超大超详细图解!让你掌 ...
