首页 新闻 会员 周边 捐助

.net core站点怎样部署更新

0
[已解决问题] 解决于 2018-04-29 17:55

就是只有一台服务器,然后每次更新的时候dll会被进程占用,导致更新失败,请问.net core这个是怎样更新的?

光明中的黑手的主页 光明中的黑手 | 初学一级 | 园豆:135
提问于:2018-04-28 11:23
< >
分享
最佳答案
0

我之前采取过的一种方式:复制.dll文件到目标文件夹出现是否要覆盖时,暂时不要点确认,先打开任务管理器结束w3wp进程,然后立即点击确认。切记“结束w3wp进程”与“点击确认进行复制”这2个操作之间的间隔要尽可能短,用鼠标基本来不及,我都是通过键盘结束w3wp进程、鼠标点击复制确认完成的。

奖励园豆:5
dudu | 高人七级 |园豆:30925 | 2018-04-28 17:59
其他回答(5)
0

我也想知道。。。

87Super | 园豆:107 (初学一级) | 2018-04-28 16:24
2

利用Nginx来实现,先停一台,然后再部署好之后,重启。依次类推。Nginx会帮你平滑转移。

幻天芒 | 园豆:37205 (高人七级) | 2018-04-28 18:07

你这里的先停一台是什么意思?主要我就是一台服务器,

支持(0) 反对(0) 光明中的黑手 | 园豆:135 (初学一级) | 2018-04-28 22:58

@光明中的黑手: 1台服务器可以启动多个服务实例。

支持(0) 反对(0) 幻天芒 | 园豆:37205 (高人七级) | 2018-05-02 21:09
0

首先赞同楼上用nginx做转发的方式,然后分享下iis用脚本部署的方式

0. 拷贝生成文件到服务器

1.通过脚本写入app_offline.htm文件(iis将请求指向到此htm)  `echo 网站维护中>X:\Site\Test\app_offline.htm` 

2.复制生成文件到站点 `xcopy X:\SiteTemp X:\Site\Test\ /s /e /Q /Y /I`

3. 删除app_offline.htm  `del X:\Site\Test\app_offline.htm`

4. 发布成功

完整脚本如下,路径需更换

@echo off
echo 网站维护中>X:\Site\Test\app_offline.htm
call xcopy X:\SiteTemp X:\Site\Test\ /s /e /Q /Y /I del X:\Site\Test\app_offline.htm
易墨 | 园豆:449 (菜鸟二级) | 2018-04-30 10:58
0
墨镜带佬星 | 园豆:2310 (老鸟四级) | 2018-05-14 23:43

谢谢,之前没看到这官方操作,我的操作是直接手动停止程序池,复制进去之后在手动重启。

支持(0) 反对(0) 光明中的黑手 | 园豆:135 (初学一级) | 2018-05-28 09:29
0

你可以用 powershell 脚本来控制网站:

Import-Module WebAdministration
Stop-WebSite 'Default Web Site'
Start-WebSite 'Default Web Site'

然后你就可以用 powershell 脚本来复制站点的文件了,这样的话,还是会重启站点。但是比点来点去要方便多了。

不如隐茶去 | 园豆:559 (小虾三级) | 2018-05-27 23:01

谢谢!

支持(0) 反对(0) 光明中的黑手 | 园豆:135 (初学一级) | 2018-05-28 09:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册