<步骤1:发布>

<步骤2:确保已打开iis web相关功能>

[注]如果未打开在按如下操作.

Win7/win10通过打开或关闭windows功能.

Windows2012等服务器操作系统,需要通过添加角色进行相关处理.

<步骤3:安装运行时等捆绑安装包>

下载.netcore windows服务器捆绑安装包:

V2.0.8: https://aka.ms/dotnetcore-2-windowshosting

V2.1.2: https://www.microsoft.com/net/download/thank-you/dotnet-runtime-2.1.2-windows-hosting-bundle-installer

[注1]如果发布失败了,可能是.net core 编译和发布的版本不一致.

<解决办法> 命令测试确定版本问题后,下载对应的.

[注2]如果系统没有网络连接,则请下载上述组件的底层环境:https://www.microsoft.com/download/details.aspx?id=53840  .

<步骤4:管理员权限运行cmd命令>

net stop was /y

net start w3svc

<步骤5: IIS上发布>

应用程序池:无需托管.

<步骤6:设置是开发环境还是生产环境>

ASPNETCORE_ENVIRONMENT   Production|Development

<步骤7:设置iis应用程序池,避免慢的问题>

IIS8设置
应用程序池-高级设置-启动模式:AlwaysRunning 
应用程序池-高级设置-进程模型-闲置超时:1740 (分钟) 
应用程序-高级设置-常规-预加载已启用:True

这样就可以解决问题了.

但是在IIS7.5上并没有这些选项,需要安装一个模块:Application Initialization Module for IIS 7.5

下载安装略过不提.主要记录一下配置方法.

打开服务器上的ApplicationHost.config文件.这个文件在IIS的安装目录Config下.

添加如下内容(但是似乎不添加也行)

<globalModules>

<add name="ApplicationInitializationModule"

image="%windir%\System32\inetsrv\warmup.dll" />

</globalModules>

然后设置网站应用程序和和对应的应用程序池

<system.applicationHost>

<applicationPools>

<add name="West Wind West Wind Web Connection"

autoStart="true"

startMode="AlwaysRunning"

managedRuntimeVersion="v4.0"

managedPipelineMode="Integrated">

<processModel identityType="LocalSystem"

setProfileEnvironment="true" />

</add>

</applicationPools>

<sites>

<site name="Default Web Site" id="1">

<application path="/MPress.Workflow.WebQueueMessageManager"

applicationPool="West Wind West Wind Web Connection"

preloadEnabled="true">

<virtualDirectory path="/"

physicalPath="C:\Clients\…" />

</application>

</site>

</sites>

</system.applicationHost>

关键在于应用程序池设置的autoStart="true" startMode="AlwaysRunning" 这两个的意思是自动自动和启动模式.

网站应用程序设置的preloadEnabled="true"

这样设置完成之后网站已经基本可以保证秒开了,基本解决了第一次打开速度很慢的问题.当然还遗留了一个EF首次加载缓慢的问题,额这还不知道怎么解决.似乎是没办法解决的.

<步骤8:设置目录权限,否则可能50x错误>

[参考]https://blog.csdn.net/qiandeqiande/article/details/79290086

[注1]有时发布到线上,死活不行,比如自定义一个端口,发现是vs项目中设置的调试端口与线上iis发布的端口不一致。可以通过cmd:  dotnet corelab.web.dll来看监听的端口。

分享一般.net core的web项目发布到服务器环境的处理步骤(来自本人实践笔记)的更多相关文章

  1. python Web项目上线之服务器环境配置

    1.下载安装Xftp 安装成功后,登录服务器用户密码,登录成功后 使用Xftp 将下载好的python解释器linux压缩包放置在服务器根目录下(这里用的是python3.7) 2. 解压压缩包,安装 ...

  2. Java Web项目发布及使用自定义域名

    详细讲解的网址: http://wenku.baidu.com/link?url=-ACZxKUcfrbhrMRUP3Ov-Q_c-Q9JPrA9D1fzHjHuJsWwZfRsVDVQ2qBtoY7 ...

  3. 部署Eclipse中的Web项目到Tomcat服务器运行

    用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...

  4. 将web项目打成war包部署在tomcat步骤

    将web项目打成war包部署在tomcat步骤 1.将自己的项目打成war包. 2.将打包好的war复制到${tomcat.home}/webapps项目下. 3.在${tomcat.hom}/con ...

  5. 当java web项目部署到服务器上时,无法将图片等媒体文件保存到服务器的最终奥义

    今天,我在部署web项目至云服务器上(Tomcat8.0)时,突然发现我的应用,无法上传图片,视频等多媒体文件了,一再检查自己的代码逻辑没有问题之后,逐一排查,首先想到的就是看一下控制台打印的日志,日 ...

  6. 全网最详细的IDEA、Eclipse和MyEclipse之间于Java web项目发布到Tomcat上运行成功的对比事宜【博主强烈推荐】【适合普通的还是Maven方式创建的】(图文详解)

    不多说,直接上干货! IDEA [适合公司业务]全网最详细的IDEA里如何正确新建[普通或者Maven]的Java web项目并发布到Tomcat上运行成功[博主强烈推荐](类似eclipse里同一个 ...

  7. 全网最详细的Eclipse和MyEclipse里对于Java web项目发布到Tomcat上运行成功的对比事宜【博主强烈推荐】【适合普通的还是Maven方式创建的】(图文详解)

    不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 全网最详细的MyEclipse里如何正确新建普通的Java web项目并发 ...

  8. Eclipse导入web项目发布项目时报Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web错误解决方案

    Eclipse导入web项目后,将web项目加载到server进行发布时,提示Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java ...

  9. 修改web项目发布路径

    Eclipse中用Tomcat发布的Web项目,更改其部署路径 我的Eclipse的工作目录是D:/workspace先配置Tomcat 选择你的tomcat版本 点击next 这里先不要把项目添加进 ...

  10. 一种让运行在CentOS下的.NET CORE的Web项目简单方便易部署的自动更新方案

    一.项目运行环境 项目采用的是.NET5开发的Web系统,独立部署在省内异地多台CentOS服务器上,它们运行在甲方专网环境中(不接触互联网),甲方进行业务运作时(一段时间内)会要求异地服务器开机上线 ...

随机推荐

  1. docker搭建yapi接口文档系统、Idea中上传接口、在线调用

    一.前言 在我们后端开发中,必不可少的是接口的交接,有很多种方式,常见的就是swagger,不过这个侵入性太强了.还有就是接口文档的框架,比如今天小编带大家一起搭建的yapi,在公司还是挺常见的! 今 ...

  2. Vue 中为什么要有nextTick?

    摘要:本文将浅析nextTick的作用.使用场景和背后的原理实现,希望对大家有所帮助. 本文分享自华为云社区<Vue 中的 nextTick 有什么作用?>,作者:CoderBin. 一. ...

  3. MySQL开发

    常用数据类型 整数:tinyint.int.bigint小数:decimal.字符串:char.varchar.text 增 insert into 表名(列名,列名)values(值,值): 删 d ...

  4. 生成随机数的几种方法、Math.random()随机数的生成、Random()的使用

    第一种方法使用:System.currentTimeMillis(); final long l = System.currentTimeMillis(); final int rs = (int) ...

  5. 分享个好东西 - 两行前端代码搞定bilibili链接转视频

    只需要在您的要解析B站视频的页面的</body>前面加上下面两行代码即可,脚本会在客户端浏览器里解析container所匹配到的容器里的B站超链接 (如果不是外围有a标签的超链接只是纯粹的 ...

  6. Linux进程间通信(一)

    进程间通信 概念:进程是一个独立的资源分配单位,不同进程之间有关联,不能在一个进程中直接访问另一个进程的资源. 进程和进程之间的资源是相互独立的,一个进程不能直接访问另外一个进程的资源,但是进程和进程 ...

  7. 前端性能优化——首屏时间&&白屏时间

    1.首屏时间概念 首屏时间是指用户打开一个网站时,直到浏览器首页面内容渲染完成的时间. 2.白屏时间概念 白屏时间即是,浏览器开始显示内容的时间,所以我们一般认为解析完<head>的时刻, ...

  8. 死磕面试系列,Java到底是值传递还是引用传递?

    Java到底是值传递还是引用传递? 这虽然是一个老生常谈的问题,但是对于没有深入研究过这块,或者Java基础不牢的同学,还是很难回答得让人满意. 可能很多同学能够很轻松的背出JVM.分布式事务.高并发 ...

  9. java学习之SpringMVC拦截器开发

    0x00前言 springmvc的拦截器类似于Selvet的Filter,但是所属的操作又不一样 Spring MVC 提供了 Interceptor 拦截器机制,用于请求的预处理和后处理,也就是增强 ...

  10. 第2-3-2章 环境搭建-文件存储服务系统-nginx/fastDFS/minio/阿里云oss/七牛云oss

    目录 5. 文件服务开发 5.1 环境搭建 5.1.1 数据库环境搭建 5.1.2 Nacos环境搭建 5.1.3 Nginx环境搭建 5.1.4 maven工程环境搭建 5. 文件服务开发 全套代码 ...