直到今天我的博客终于可以见世人了,中间懒了很长一段时间,什么也没干,也没怎么学习,前段时间也是各种折腾,无心学习。本篇主要汇总下从一开始到现在遇到的问题汇总,作为学习笔记。我的博客就是我的学习笔记,因为发现不管是以后的工作还是学习中,我们还是会遇到以前遇到过的问题,而这时再去园子里翻别人的博客,无疑就是浪费时间,而且如果碰到上下不连贯的内容,还是耽误更长的时间,所以自己写自己能理解能看懂的博客作为自己的学习笔记才是最好的学习方式。关于csdn和博客园,我一般是在csdn里面写然后拷贝到博客园里,如果多了就直接迁移过去,没什么别的原因,就是比较喜欢csdn的编辑器,看的顺眼。切入正题:

一、在刚开始学习.net core的时候,上来就学习了怎么在CentOS上去发布使用.net core做的项目,哈哈C#写的东西居然跑到了Linux上,这在以前可是想都没法想的,就这样一点点的学习,一个个命令的学习,对我这种Linux小白来说真的是太吃力了,可还是一点点的跑起来了,那时只是简单的将.net core的默认的web跑了起来,用到的有nginx 反向代理,将http://localhost:5000 转发到了80端口,用到了supervisor,它将我们的命令行进程变成了可以运行在后台的守护进程,让我们不用再看到那个黑框框,还可以实时监控进程的运行状态,如果死掉了,立马去尝试重启它,这两个是我在运行我的博客必不可少两个工具。

二、再来说说我的博客,我的博客将前端和后台管理分开实现,在后台时,我用到了layui,也是一款经典的模块化的前端框架,还是比较好用的,用了它的列表,文本框,按钮,富文本编辑器,以及分页等等,用起来也很方便,简单展示效果:

前端我用到了BootStrap作为UI展示,实现响应式布局,还是比较漂亮,当然模板也是直接下载的,另外还用到了Anjularjs进行页面填充以及请求数据,BootStrap作为前端框架来说,的确很漂亮,而Angularjs有下一代Web应用之称也是不为过,我用它,主要是绑定前面的博客内容特别方便,直接也用过一个特别小的js库,叫做doT.js,都有模板的意味,很好用,简单代码展示(当然我只是用到了凤毛麟角):

这个get请求的方法真的是变的太个性了,之前学习Angularjs的时候还没有这样的写法,导致一用就出错了,我将数据打印到了控制台,大家可以查看返回的数据格式,下面前台页面绑定:

这就是博客绑定的代码,是不是和doT.js特别像,但是比他要灵活的多,我不需要模板,我可以直接很任性的这样去绑定数据,什么都不需要管,特有的ng-命令看着也很舒服,包括时间格式的Format以及博客内容的字数限制,是不是很强大。下面是我用到的Bower库:

可能有人觉得我用的太乱,太杂,的确,我是什么都想尝试用下,不喜欢可以随意喷,无所谓。

数据库操作我用的是一个轻量级的ORM框架Dapper,它现在也是开源的,可以直接在Nuget里面还原使用,它的效率也很高,关于这个在我之前的博客中有过介绍,在这个版本里面我没有用到什么EF之类的,还是使用传统的方式,实现了数据库操作,之后这个项目会不断升级,使用更多新的东西,前台展示什么的应该不会再更新,主要还是想学习下.net core新的东西。再贴几张图:

里面的有写内容我并没有实现,只是做了博客内容展示以及详情页和右侧的数量统计,后面再把分页加上,内容比较简单。

三、当我前几天实现数据绑定时,想想终于可以放到外网上了,可是在发布到CentOS 上时又时问题百出,首先遇到的问题是酱紫的

为这个问题傻逼了很长时间,怎么会一直都是这个错误,也没有详细的错误,才发现默认的错误页的内容是这样的,然后各种模式各种尝试,可是一直都是这个错误,在这里说一下ASPNETCORE_ENVIROMENT的三种环境变量。

以上是关于多环境的介绍,直接拍了书上的内容,可能是时间太久了的原因,忘记了在supervisor配置守护进程的时候配置过环境变量,如图:

这里的进程环境变量为Production,我就尝试将它改成了Development,居然可以了(疑问一),但是又出现了新的问题,数据库连接超时,配置文件中我配置的是另一台Server的数据库地址,提示超时问题,发现也有人遇到了类似的问题,见这里,博主说是数据库版本的问题,的确我用的却是比较低的版本,还没有尝试高版本是否可以(疑问二),再然后我就大胆的使用了mssql for linux,这就是为什么我用了mssql for linux 的原因了,是因为没有办法了。终于终于我的博客可以让别人看到了。

仅以此篇博客记录做这个Demo时遇到的问题和解决方式,还有些遗留的问题,后续再继续研究。

我的博客地址:http://www.dayali.net/Home   后台地址:http://www.dayali.net/Admin/Home  欢迎访问!

源代码地址:https://github.com/Allen0910/DayaliBlog

扫描二维码关注我的公众号,共同学习,共同进步!

.net core web发布到CentOS汇总的更多相关文章

  1. 2017-03-05 CentOS中结合Nginx部署dotnet core Web应用程序

    Visual Studio Live 倒计时2天,当然这是美国倒计时两天,中国应该是在3月8日的凌晨,正值"3.8妇女节".提前祝广大的女性同志节日快乐,当然还有奋斗在一线的程序媛 ...

  2. 使用docker部署Asp.net core web应用程序

    拉取aspnetcore最新docker镜像 aspnetcore的docker镜像在docker官网是有的,是由微软提供的.它的依赖镜像是microsoft/dotnet.通过访问网址:https: ...

  3. 循序渐进学.Net Core Web Api开发系列【7】:项目发布到CentOS7

    系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇讨论如 ...

  4. 2017-03-05 CentOS中配置守护服务(Supervisor)监听dotnet core web程序的运行

    我们继续解决上篇博客的问题,我这个人有个毛病,不喜欢遗留什么问题,也不喜欢问题说不明白,具体要怎么解决一定要详尽,因为经常自己遇到问题的时候,去翻别人的博客,就会遇到这样的问题,很苦恼,又说废话了. ...

  5. .net core web api部署到Linux系统CentOS 7

    一.创建一个.net core web api 的Demo 完成后的项目结构如图 修改下监听端口 发布代码 二.发布到CentOS 7上并运行 下一步需要一定的虚拟机知识了,我这里使用了windows ...

  6. CentOS 7 Nginx部署.NET Core Web应用

    部署.NET Core运行时 必要前提 在安装.NET Core前,需要注册Microsoft签名秘钥并添加Microsoft产品提要,每台机器只需要注册一次,执行如下命令: sudo rpm -Uv ...

  7. ASP.NET Core部署系列二:发布到CentOS上

    前言: 在上一节中,通过一系列的步骤,已经将项目部署到IIS上,虽然遇到了一些问题,但最终解决并成功运行了.而在这一节中,将尝试通过linux系统的环境下,部署项目,实现Net Core跨平台的亮点. ...

  8. Docker 发布 Abp net core web 服务

    Docker 发布 Abp net core web 服务 准备工作:Abp 项目,这个是模板下载地址 https://aspnetboilerplate.com/Templates (本例使用的是S ...

  9. List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac

    List多个字段标识过滤 class Program{  public static void Main(string[] args) { List<T> list = new List& ...

随机推荐

  1. JS基础知识简介

    使用js的三种方式 1.HTML标签内嵌js <button onclick="javascript:alert(真点啊)">有本事点我</button> ...

  2. Mysql常用优化方案

    摘自:http://www.jb51.net/article/18934.htm 1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也 ...

  3. Python中单例模式的使用方法

    单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在. 当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场 ...

  4. python面向对象(一)

    什么是面向对象的程序设计及为什么要有它 面向过程的程序设计:核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式. ...

  5. Android 开发之:Intent.createChooser() 妙用

    大家对该功能第一印象就是ApiDemo 里面的 其只有区区几行代码  提取为: Intent intent = new Intent(Intent.ACTION_GET_CONTENT); inten ...

  6. HAProxy的访问控制

    HAProxy的ACL用于实现基于请求报文首部.响应报文的内容或其他的环境状态信息来做出转发决策,这大大增强了其配置弹性,其配置法则通常分为两步,首先去定义ACL,即定义一个测试条件,而后在条件得到满 ...

  7. Win10在右键菜单添加“在此处打开命令窗口”设置项

    Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\OpenCmdHere] @="在此处打开命令 ...

  8. C#数组存入引用类型

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cont ...

  9. C/C++ 数据类型的使用方法详解

    cppreference.com -> C/C++ 数据类型 C/C++ 数据类型 C语言包含5个基本数据类型: void, integer, float, double, 和 char. 类型 ...

  10. 20160418 while,switch,do..while的使用

    9 一.While循环 示例:求100以内所有数的和 Int i=1;//初始条件 Int sum=0; While(i<=100)//循环条件 { Sum+=i;//循环体 i++;//状态改 ...