在 IIS6 中部署 .NET 代码时正在使用的文件

在 IIS6 中部署 .NET 代码时正在使用的文件

有时在 IIS6 中部署 .NET 代码时,我无法重命名或删除 .NET 应用程序文件夹,因为它正在使用中。似乎唯一能解决这个问题的方法就是停止 w3svc 服务,执行我需要的操作,然后重新启动它。

当 Web 服务器上还有其他 Web 应用程序时,这种情况并不理想。仅仅停止该特定虚拟网站似乎也不起作用。

有一个更好的方法吗?

答案1

尝试这个:

  1. 在 Internet 信息服务中,右键单击网站并选择特性
  2. 前往主目录标签
  3. 点击卸下(右下角)

答案2

将 AppOffline.aspx 文件放到要进行更改的目录中。这样您就可以重命名或删除该目录或其中的任何文件夹/文件。我总是使用名为 AppOfflineNOT.aspx 的文件进行部署。然后根据需要删除/替换“NOT”。这样,您在更新网站时就不必与 iis 打交道了。

答案3

这里有一个类似的问题:如何让 IIS7 释放锁定的文件?

答案4

这是一个解决上述所有问题的一个非常简单的方法。

  1. 转到开始 > 运行。
  2. 进入IIS重置然后确定

这将启动和停止服务,并在您刷新代码之前释放任何滞留的进程。只需在命令完成后立即准备推送代码,以避免任何人跳转到服务器并创建锁定。我通常会编写一个 xcopy 脚本以在之后立即运行。

相关内容