zoukankan      html  css  js  c++  java
  • .netCore MVC 更新时文件被锁定的解决办法

    使用.netCore更新部署在IIS上的WEB应用时发现文件被锁定了不能像以前非core的那样直接覆盖了,以下就是解决这一问题我使用的方法。

    也可以参考微软官方的文档 

    https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.0&tabs=aspnetcore2x

    方法有几种:

    最简单的就是把网站停止了再更新。

    由于我懒得每次这样关感觉也不太方便写了个脚本(依据官方提供的第一种方式)

    1.先建个空的目录分别创建以下文件

    Release 目录用来放准备用来更新的文件的,通常VS发布的东西都复制进去

    app_offline.htm 这个文件是用于更新中若有人访问站点里显示的内容,只面的内容自己随意编写就行了,怕麻烦直接写句“网站维护中……”也可以

    update.bat 用于执行更新的脚本内容如下

    @echo off
    set updatePackRootPath=E:网站部署MvcMovie_UpdatePack
    set updateWebPath=E:网站部署MvcMovie
    
    set offlineFilePath=%updatePackRootPath%app_offline.htm
    set updateSourcePath=%updatePackRootPath%Release
    echo ******************************************
    echo *请确认以下更新信息
    echo *更新包路径:%updatePackRootPath%
    echo *更新目标路径:%updateWebPath%          
    echo *按任意键开始更新
    echo ******************************************
    
    pause
    
    echo 开始更新
    
    call xcopy %offlineFilePath% %updateWebPath% /s /Q /Y /I
    call xcopy %updateSourcePath% %updateWebPath% /s /e /Q /Y /I
    del %updateWebPath%app_offline.htm
    
    echo 更新完成
    pause
    

     把以上"updatePackRootPath"、“updateWebPath”两个变量的值改为你自己对应的以后执行这个bat就可以自动更新了。

    懒得自己建的可以下载下来改一下BAT里面以上提到的两个变量值就可以了。

    https://files.cnblogs.com/files/nekoyzx/UpdatePackTool.zip

  • 相关阅读:
    golang动态加载原生代码思路
    boltdb的实现和改进
    如何保证数据掉电不损坏?
    msgpack库的神奇用法
    消息推送与同步协议的思考
    cassandra的gc调优
    tcp链接断开的探测
    加速和监控国际网络
    轻松逃脱某防火墙对ss的探测
    java文件操作之war压缩解压
  • 原文地址:https://www.cnblogs.com/nekoyzx/p/9335772.html
Copyright © 2011-2022 走看看