一、ASP .NET Core 2.0部署到IIS
1. 部署之前确认宿主机的IIS是否安装了AspNetCoreModule模块,没有的话需要到官网下载。
下载地址:https://dotnet.microsoft.com/download#/runtime
2.安装好AspNetCoreModule模块之后需要运行两条命令启用模块。
3.开始发布ASP .NET Core项目(这里用 VS2017发布,也可以用命令发布)
a.右键项目Publish…
b.选择File System,并且选择好发布的目标位置
4.在IIS上新建站点,复制发布好的ASP .NET Core项目到站点下,并且将程序应用池的 .NET CLR version设置成"无代码托管"方式
5.点击OK,浏览网站就可以了
二、Angular7项目部署到IIS
1.在Angular项目中改好请求的API地址为上面已经部署好的 ASP .NET Core 的地址
2.使用AOT编译打包
使用AOT,浏览器下下载预编译版本的应用程序。浏览器直接加载运行代码,所以它可以立即渲染应用,而不用等应用完成首次编译。(更多的优点可以再官网上查看:https://angular.cn/guide/aot-compiler)
使用powershell进入到相应的项目根目录
运行命令行: ng build --prod --aot
运行完之后会在根目录生产一个dist文件夹,将此文件夹中的文件放到IIS相应的站点下。
2.安装URL Rewrite组件
因为Angular无刷新的特性,在浏览器地址栏的网址不会真正地映射到磁盘的特定位置
URL Rewrite组件下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=47337
3.添加配置文件Web.config
根据官网的要求,你需要在网站的根目录下添加一个配置文件Web.config。(官网参考文档:https://angular.cn/guide/deployment)
内容如下:
至此,项目就已经部署完成。