Net Core 网站搭建和部署

.Net Core MVC环境安装开发

[TOC]

最近在学习 .net core mvc框架下的开发,因此有些学习体验可以提供给大家,全部都是自己在学习过程中总结的干货。包含Windows、Mac、CentOS等环境下遇到的问题以及解决方法。

本人也是小白,只是在学习过程中发现这一块儿遇到的问题网上资料太少,所以就将自己的学习经历记录下来,希望对后来者学习有所帮助

一、dotnet SDK 和Runtime的下载和安装

对于windows用户和Mac用户这一步就很简单了。直接在官网上下载对应的安装包进行安装就行了。但是一定要记住一点,那就是版本一定要一致,否则你会在后面踏进很多坑,特别是对于多平台开发的同学。

二、创建MVC项目

编辑器推荐VSCode

在要创建项目的地址创建一个文件夹,例如Demo,然后在命令行模式下进入到当前的目录,例如我这里是D:\Demo

以下代码都可以在VSCode中直接输入,操作步骤是"查看 => 集成终端"

新建项目之后可以看到文件夹下已经生成了对应的文件

这个时候我们执行 命令,可以安装项目的依赖文件。执行 命令后就可以在本地 的地址上访问到界面。

最终,我们需要发布项目,执行 命令就可以将项目发布到当前文件夹的 下,需要部署时只要将publish文件夹复制到服务器上进行部署即可。

三、项目部署到服务器

部署之前一定要确定项目编译通过无错误,并且已经安装dotnet-sdk 以及 dotnet-runtime,两者版本要一致!两者版本要一致!两者版本要一致!

在IIS服务器上部署:

在IIS上部署相对要简单很多,毕竟都是自家玩意儿,只需要在IIS上新建一个网站,然后选择基本设置,将物理路径选择自己项目的路径即可。

在CentOS服务器上部署:

在Linux服务器上部署的步骤就多了些。首先,依然是要确定项目编译通过无错误,并且已经安装dotnet-sdk 以及 dotnet-runtime,两者版本要一致!两者版本要一致!两者版本要一致!

然后,我们需要安装Jexus,通常情况下,对外提供的 Web 服务都在 80或者443 端口,而我们的 Web 应用程序默认运行在5000端口,在 Windows 上可以使用 IIS 来宿主 ASP.NET Core,在 Linux 下可以用 Nginx,Apache,Jexus 等来作为宿主。本实验向大家推荐使用国内社区自行开发的 Jexus。

以下内容假设你的项目名称是aspetcoreapp,并且publish文件放置在/var/www/aspnetcore下

执行命令安装独立版的 Jexus:

执行命令将 asp.net core 应用部署到 Jexus

执行命令启动服务监听端口

创建 aspnetcore 配置文件

修改 aspnetcore 配置文件为如下内容

执行命令删除原有默认配置文件

执行命令启动 Jexus

恭喜,您的 ASP.NET Core Web 应用运行成功,使用浏览器直接访问 你的IP地址 即可看到 项目的 效果。

四、学习过程中遇到的问题和解决方法

1、网站部署之后输入网址出现 的问题2、使用 和 命令时出现如下错误3、网站部署后访问地址出现拒绝访问或者找不到页面的问题

##### 解决出现以上三个问题请:

检查自己的dotnet版本是否统一(跨平台开发一定要注意这一点,否则无法编译、发布)

dotnet-SDK 和 dotnet-runtime 是不是都安装了,特别是dotnet-runtime

linux服务器下第一次安装或配置Jexus建议重启一下服务器再启动Jexus服务

在项目文件.csproj文件中添加如下内容

五、总结

以上就是我在.net core项目开发和部署中遇到的坑,希望能给后来学习的朋友一点帮助,有什么疑问的可以留言。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180710G0UPOY00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券