<步骤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. 洛谷P1656 炸铁路 (求割边)

    用tarjan变种求割边的模板题 其实还可以求出所有的边双(用栈),但本题不需要求. 1 #include<bits/stdc++.h> 2 using namespace std; 3 ...

  2. Linux 下配置 hosts 并设置免密登录

    Linux 下配置 hosts 并设置免密登录 作者:Grey 原文地址: 博客园:Linux 下配置 hosts 并设置免密登录 CSDN:Linux 下配置 hosts 并设置免密登录 说明 实现 ...

  3. VScode将代码提交到远程服务器、同时解决每次提交都要输入密码的问题(这里以gitee为例子)

    文章目录 1.第一种情况.项目直接从gitee上拉取下来 2.第二种情况.将新建的项目提交到远程服务器 3.解决将代码提交到远程每次都要输入用户名和密码 4.个人遇到的奇葩问题 1.第一种情况.项目直 ...

  4. 使用 Windows Core Audio APs 进行 Loopback Recording 并生成 WAV 文件

    参考文档 COM Coding Practices Audio File Format Specifications Core Audio APIs Loopback Recording #inclu ...

  5. Mysql InnoDB Buffer Pool

    参考书籍<mysql是怎样运行的> 系列文章目录和关于我 一丶为什么需要Buffer Pool 对于InnoDB存储引擎的表来说,无论是用于存储用户数据的索引,还是各种系统数据,都是以页的 ...

  6. 基于FPGA的AES加解密IP

    Programmable AES Encryption/ Decryption IP 可编程AES加解密IP 可编程AES加解密IP提供了加解密算法功能,兼容美国国家标准与技术研究院(NIST)发布的 ...

  7. HTTP(s) API 经验总结

    目录 参考文章 First URL HTTP(s)-Header 请求方式 参考文章 https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Overvie ...

  8. Oracle:ORA-39006、ORA-39213解决办法

    执行Oracle数据库导入,遇到报错ORA-39006: internal error.ORA-39213: Metadata processing is not available.这还是第一次遇到 ...

  9. [CS61A] Lecture 5&6&7. Environments & Design & Functions Examples & Homework 2: Higher Order Functions

    [CS61A] Lecture 5&6&7. Environments & Design & Functions Examples & Homework 2: ...

  10. 两种方案实现Dubbo泛化调用

    Dubbo的泛化调用是一个服务A在没有服务B的依赖,包的情况下,只知道服务B的服务名:服务的接口的全限定类名和方法名,以及参数,实现服务A调用服务B. 原文链接:http://blog.qiyuan. ...