参考:http://www.07net01.com/2016/08/1638058.html

http://www.cnblogs.com/calvinK/p/5628298.html

http://www.mamicode.com/info-detail-1535706.html

http://www.cnblogs.com/ants/p/5732337.html

2018/2/27更新:

部署到Linux直接发布项目即可不需要在进行配置

sdk下载地址:https://www.microsoft.com/net/download/linux

官方教程地址:https://www.microsoft.com/net/learn/get-started/linuxcentos

1、项目发布

1.1、使用vs2015 发布项目

注:在网上看了很多教程都说要在project.json中配置runtimes 块,删除Microsoft.NETCore.App”节点中

"type" : "platform"的配置,只要version节点。      经过测试不需要删除也可以

1.1.1 网上找的教程

  1. 删除“Microsoft.NETCore.App”节点中"type" : "platform"的配置
  2. 增加“runtimes”节点中对应的平台 如下:
  3.  "runtimes": { //加入runtime
    "win7-x64": {},
    "win7-x86": {},
    "osx.10.10-x64": {},
    "osx.10.11-x64": {},
    "Ubuntu.14.04-x64": {},
    "centos.7-x64": {}
    }
  4. 修改后的“project.json”如下:

1.1.2 自己测试通过

1、在这我只修改了publishOptions节点,其他不做修改,右键点击项目选择发布:

2、点击发布后的界面,选择自定义后输入你的配置名(名称在定义),点击确认后直接下一步

3、发布方法选择文件系统,目标位置选择你要发布后保存的地方,可以直接点击发布,后面的设置保持默认

2、在LINUX 系统CentOS7 部署项目

注:其他Linux系统起微软官网找配置命令,地址:https://www.microsoft.com/net/core#windows

2.1、sudo yum install libunwind libicu(安装libicu依赖)

2.2、curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=809131(下载sdk压缩包)

2.3、sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet(解压缩)

2.4、sudo ln -s /opt/dotnet/dotnet /usr/local/bin(创建链接)

输入 dotnet --info 来查看是否安装成功,如果可以执行则表明.NET Core SDK安装成功

3、项目运行

3.1、在Linux目录 home下创建wwwroot文件夹(文件夹名称可自定义)。

3.2、把已经发布好的项目上传到上面创建的wwwroot下

3.3、使用命令 dotnet 你的项目路径/OneAspNetCore.dll 运行项目:OneAspNetCore.dll 这是我的项目发布后生成的dll文件,OneAspNetCore是我的项目名称。

运行后如图所示运行成功,你可以使用Linux服务器上的浏览器输入:localhost:5000 访问项目,info信息提示在这里不用管它

注:在执行 dotnet  命令运行项目后不能在做其他操作或按Ctrl+c退出,否则项目会停止运行

3.3.1、运行项目时会报错 version 版本错误如图所示:

3.3.2、解决上图错误:更改项目project.json文件中dependencies节点的 Microsoft.NETCore.App版本信息,你也可以升级服务器的 sdk版本,修改如下:

 "Microsoft.NETCore.App": {
"version": "1.0.1",//把版本号修改为 1.0.0
"type": "platform"
},

浏览器访问后可能会访问不到,记录一下错误信息:

当出现如下错误时有两种可能:

1、项目发布时未在project.json文件中 publishOptions节点配置视图、控制器等,检查是否配置,修改后重新发布项目到服务器上,配置如下:

 "publishOptions": {
"include": [
"wwwroot",
"Controllers",
"IRepositories",
"Models",
"Views",
"web.config"
]
}

2、当第一步检查已经配置好,项目也运行成功就是访问不到!解决方法:使用命令 cd /home/wwwroot/dev/ 到项目文件夹中 在执行dotnet OneAspNetCore.dll

在打开服务器浏览器访问就能访问到了,出现这个问题网上找了下说是权限问题!!!

注:以上部署只能内部访问,外部访问配置需要配置 nginx服务 配置地址:http://www.cnblogs.com/miskis/p/6022607.html

【asp.net】Linux 部署 asp.net core 项目的更多相关文章

  1. ASP.NET Linux部署(2) - MS Owin + WebApi + Mono + Jexus

    ASP.NET Linux部署(2) - MS Owin + WebApi + Mono + Jexus 本文承接我的上一篇博文: ASP.NET 5 Linux部署,那篇文章主要是针对最新的ASP. ...

  2. Linux部署ASP.NET 5 (vNext)

    原文:Linux部署ASP.NET 5 (vNext) ASP.NET 5 (vNext) Linux部署   引言 工欲善其事,必先利其器. 首先,我们先明确下以下基本概念 Linux相关 Ubun ...

  3. Linux 部署ASP.NET SQLite 应用 的坎坷之旅 附demo及源码

    Linux 部署ASP.NET SQLite 应用 的坎坷之旅.文章底部 附示例代码. 有一台闲置的Linux VPS,尝试着部署一下.NET 程序,结果就踏上了坑之路,不过最后算是完美解决问题,遂记 ...

  4. Nginx知多少系列之(五)Linux下托管.NET Core项目

    目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...

  5. linux --- 部署前后端分离项目

    vue + uwsgi +nginx 部署前后端分离项目 准备项目 1.将前端vue项目包和后端django项目包上传服务器,通过lrzsz,直接从windows拖进linux中 2.解压缩操作 前端 ...

  6. Linux 部署 ASP.NET Core 的一些问题记录

    异常错误: 关闭 IP6 #修改 vi /etc/sysctl.conf # 添加如下三条设置    net.ipv6.conf.all.disable_ipv6 = 1    net.ipv6.co ...

  7. Linux部署Apollo+.Net Core简单使用

    Apollo官方网站非常详细,以下只是本人学习过程的整理 一.概念 Apollo(阿波罗)是一款可靠的分布式配置管理中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并 ...

  8. 【无私分享:ASP.NET CORE 项目实战(第十一章)】Asp.net Core 缓存 MemoryCache 和 Redis

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 经过 N 久反复的尝试,翻阅了网上无数的资料,GitHub上下载了十几个源码参考, Memory 和 Redis 终于写出一个 ...

  9. 【转载】CentOS 7部署ASP.NET Core应用程序

    看了几篇大牛写的关于Linux部署ASP.NET Core程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大家伙元旦快乐.不扯淡,直接进入正题.您有任何问题请在评论区留言. 1.环境 ...

随机推荐

  1. SharePoint 2013 Excel Services ECMAScript 示例之明日限行

    前言:最近遇到一个“明日限行”的功能,北京的交通啊,这个不在今天讨论范围内,暂不吐槽,想想代码开发,还要写WebPart部署,很麻烦,而且部署服务器,需要领导审批,想绕过这个麻烦事儿,就想到客户端了, ...

  2. 安装Portal for ArcGIS时如何正确配置HTTPS证书

    SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持.SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为 ...

  3. 使用 Arduino 和 LM35 温度传感器监测温度

    上一篇玩儿了一下Arduino入门,这次再进一步,用一下LM35温度传感器来监测当前温度.LM35温度传感器已经在Arduino入门套件里包含了,就是那个有三个脚的小黑块儿. 我们先把这些东西连起来. ...

  4. Android Log Tag含义

    在分析Android问题的时候重要的手段之一就是分析log,在events.log中有很多系统log,其中有些log的含义并不是很了解,下面就是从安卓源码中得到的系统log的tag. 关于Tag的说明 ...

  5. 浅谈c#中的delegate和event了

    一.开篇忏悔 对自己最拿手的编程语言C#,我想对你说声对不起,因为我到现在为止才明白c#中的delegate和event是怎么用的,惭愧那.好了,那就趁着阳光明媚的早晨简单来谈谈delegate和ev ...

  6. mysql编码格式设置

    两个地方能影响到mysql的编码格式 ①.[mysql]下default-character-set=GBK//指的是客户端输入的内容的编码(GBK只是支持中英文)②.[mysqld]下# The d ...

  7. 2015年度总结--android开发

    虽然农历年才是新的一年的开始,不过关于中西文化的问题这里就不讨论了,所谓“男女平权,公说公有理,婆说婆有理;阴阳合历,你过你的年.” 看到很多朋友在发年度总结,于是想想这一年我都在干什么呢,也总结一下 ...

  8. linux中5条查找命令

    1 which which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果. which [文件...] 参 数: -n<文件名长度> 指定文件名长 ...

  9. Cinder 调试 - 无法挂载到虚拟机

    1.问题 我们有时候在通过云主机挂载云硬盘的时候会出现挂载不上的问题.像这中问题有多种情况导致的. 看一下我遇到的两种情况. 1.权限问题 在cinder节点查看 /var/log/cinder/ci ...

  10. 【2016-10-31】【坚持学习】【Day16】【MongoDB】【入门】

    下载,安装: http://www.mongodb.org/downloads 命令行下运行 MongoDB 服务器 为了从命令提示符下运行MongoDB服务器,你必须从MongoDB目录的bin目录 ...