在 IIS 里部署 asp.net core 的站点

2018-07-06 09:55:30 +08:00
 azev
其中 iis 是如何实现反向代理的?

以往说起 iis 里的反向代理 都会说要安装 arr
但是到了 asp.net core
只会说 iis 实现了到 kestrel 的反向代理
那其中是怎么实现的呢 不是 arr? 能借用来代替 arr 吗?
993 次点击
所在节点    问与答
4 条回复
picture2200
2018-07-06 10:22:48 +08:00
普通的代理是需要用到 Urlrewrite + arr。

asp.net core 是使用 aspnetcore.dll 实现转发请求,这个 module 是 native 的,具体可以去看 server 的 applicationhost.config 配置。

部署到 IIS 的时候 webconfig 指定了 ASPnetcore module 参数,直接将请求转给 dotnet 进程。如果要分离部署还是使用 Urlrewrite + arr。

部署在 IIS 有一个问题就是无法像以前一样热部署,必须先 recycle 然后再部署,而这两个手动操作不够快。这个问题可能会导致紧急 bug 无法快速修复。所以我还是升级到了.net 4.7.2。
azev
2018-07-06 11:15:15 +08:00
@picture2200 多谢
嗯 关键是有个 web.config 指定了 ASP.NET Core Module
这个东西做了反向代理的工作 只是这个还代替不了 arr
azev
2018-07-06 11:20:03 +08:00
@picture2200
关于热部署
我看有个 offline.htm 机制
不知道能不能满足你的需求?
picture2200
2018-07-06 12:40:40 +08:00
@azev 系统已经 offline 功能,只有在重大更新才能这样,而且要提前一年规划好来年的日期,不然就要被拉上去开会。

如果用.net core, 我就要一台下线部署一台,碰到数据库更新,可麻烦了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/468562

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX