在windows部署 ASP .NET Core 的时候IIS是不二选择
一、IIS安装
不论是在window7 、w10还是Windows Server,都是十分简单的,下面以Windows10 为例
打开控制面版 ---程序 ---启用或关闭Windows功能
勾选图中的两项,其中的子项看需求自行勾选,如果不知道什么意思就先都勾上,也无所谓,勾选完成后点击确定即可
在Window Server服务器 上安装IIS为添加角色和功能
勾选Web服务器(IIS)
但有时会提示缺少文件让配置备用路径
这个时候可参考下面的博客进行解决,不再赘述
Windows Server2012 R2安装IIS时提示找不到源文件
组件源文件扩展包下载链接如下:
链接:https://pan.quark.cn/s/2e500252ea50
提取码:q9kp
二、安装.NET9 Hosting Bundle (必须)
必须安装此包的原因是防止项目发布后运行时缺少AspNet Core Module V2 模块
微软官网下载
下载后无脑安装即可
三、发布ASP .NET Core项目
点击项目名称右键选择发布
点击完成 ,出现如下页面
部署模式有框架依赖 和独立 ,框架依赖需要本机安装.net 运行时 ,独立的话不需要,实际上时把运行时打包到项目发布的文件里了。
不知道什么意思就按照图上选择就行,有其他不懂的配置自行百度就行
配置完成后选择发布 按钮
打开自己的选择的发布文件夹,即可看到发布生成的文件
四、在IIS中配置项目
打开IIS, 安装IIS之后不会生成桌面图标的,可以在windows的搜索框中搜索IIS找到它。
打开之后展开左侧,在 网站 上点击右键点击 添加网站
最后点击确定
接下来配置应用程序池
选择 无托管代码
这个时候我们访问之前写的web API接口进行测试,输入
http://localhost:50002/WeatherForecast ,出现如下界面,恭喜你,证明项目基础部署成功
(注意把端口号配置成自己设置的端口号)
注意此时想访问swagger是访问不到的 ,这是因为在之前的代码中,我们把swagger调试配置成了开发模式才显示。
配置位置在Program.cs 中
只需要将
app.Environment.IsDevelopment()
括号中的内容移动到括号外头即可,不过实际还是不建议这样干,防止自己忘了,后续可使用ApiPost等调试工具中记录接口信息,进行线上调试
五、Liunx部署计划说明
原计划下篇介绍CentOS在部署,但由于本人不太懂Linux,踩了不少坑,配置步骤又杂又乱,结果装完宝塔面板后,要安装.net9环境时,才看到.net9默认不支持在CentOS7.9上安装(手动捂脸),也搜到一些强行安装.net9的方式,对于我操作起来实在是费力,因此Linux部署暂时往后放,同时也加紧时间研究,整个CentOS 9 上进行部署。