博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Windows 服务器部署 asp.net core
阅读量:6580 次
发布时间:2019-06-24

本文共 1113 字,大约阅读时间需要 3 分钟。

踩坑日记与 Windows 服务器部署 asp.net core 指南。

准备

操作系统:Windows Server 2008 R2 或更高版本

文件:

  • aspnetcore-runtime
  • dotnet-hosting

后面这两个文件的下载地址:

599d0f25gy1ftyjq2ysbhj20df04rdfz.jpg

准备 asp.net core web 应用程序

Step1 使用 VS2017 建立 asp.net core web 应用程序。

Step2 发布。使用 “IIS,FTP” - “文件系统” 的发布方式,获取发布文件。

具体的操作,可参考这里:

Step3 IIS配置。在服务器上启用 IIS 服务,默认配置即可。

安装 asp.net core 运行环境

在服务器上分别安装

  1. Microsoft Visual C++ 2015 Redistributable
  2. aspnetcore-runtime
  3. dotnet-hosting

安装完成后,重启系统,或从命令提示符处依次执行 net stop was /ynet start w3svc

重新启动 IIS 将选取安装程序对系统 PATH 所作的更改。

安装 asp.net core 运行环境必须在配置好 IIS 之后进行。

在 IIS 中添加网站

无特殊配置,需要注意的是,将应用程序池中对应的项修改为 无托管代码

以上所有操作都可以参考 这篇博文,写得很清晰。

重点:可能会遇到的问题

500.19

599d0f25gy1ftykaa9l5qj20nz0dmt97.jpg

原因:安装 dotnet-hosting 在添加 IIS 之前,或者安装完成之后,没有进行重启。

解决方案:重新安装 dotnet-hosting ,选择修复选项。然后重启服务器。

502.5

599d0f25gy1ftykd06jyyj20km0c1mxj.jpg

原因:asp.net 所需运行环境不够。

解决:

方案1: 安装 SDK 。 但这种方案没有在我这里生效,安装姿势不对?
方案2: 在 asp.net 项目的 csproj 文件中添加
<PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>

599d0f25gy1ftyki1oc28j20pr040aa5.jpg

然后重新发布,会发现发布文件里面多了很多依赖项,更新服务器端的文件,重启网站,应该就可以大功告成了。


简单的事情,一定有简单的解决方案,对于部署 asp.net core 这种应该很标准化的操作,如果遇到问题需要很复杂,看起来就很奇奇怪怪的方案,那很可能是方向错了。

之前就踩过坑,尝试采用安装重定向等等奇怪的方法。


参考资料:


原文链接:

END

转载于:https://www.cnblogs.com/jasongrass/p/10645606.html

你可能感兴趣的文章
Deepin OS和WIN7双启动 花屏原因一例
查看>>
Exchange Server 2010的DAG高可用性
查看>>
UIMenuController—为UITextField禁用UIMenuController功能
查看>>
Protobuf使用不当导致的程序内存上涨问题
查看>>
【原创】扯淡的Centos systemd与Docker冲突问题
查看>>
Spring+Mybatis多数据库的配置
查看>>
给大家推荐一个免费下载名称读写ntfs软件的地方
查看>>
在MySQL数据库建立多对多的数据表关系
查看>>
突然停电或死机导致没保存的文件怎么找回
查看>>
dockerfile文件创建镜像详解
查看>>
kudu
查看>>
HashMap底层实现原理,以及和Hashtable的比较
查看>>
jquery.validate.min.js表单验证使用
查看>>
在JS中捕获console.log的输出
查看>>
Python扫描IP段指定端口是否开放(一次扫描20个B网段没问题)
查看>>
一些常用的WebServices
查看>>
CentOS7使用firewalld打开关闭防火墙与端口
查看>>
maven 添加阿里云maven镜像
查看>>
wireshark lua插件
查看>>
mac上安装consolas字体
查看>>