【问题标题】:Publish website to IIS, server locks dll files将网站发布到 IIS,服务器锁定 dll 文件
【发布时间】:2013-03-07 16:50:27
【问题描述】:

我已经为这个问题苦苦挣扎了大约一个星期。我正在尝试使用 FTP 将我的 MVC 网站发布到我的 IIS 服务器。唯一的问题是,当我传输文件时,MVC 总是锁定一些 DLL 文件(System.Web.MVC 等)并在 10 分钟后释放它们。

这个问题使我的网站无法持续运行,并给出了一个非常丑陋的错误消息。

尝试删除 bin 文件夹时,我拒绝访问,尝试重命名 bin 文件夹时,我拒绝访问,尝试删除特定文件时,我也拒绝访问。

另外,我无法运行任何关闭进程的程序,因为它不是我的服务器,我无权访问实际机器。

如何才能顺利发布我的网站而不会遇到这些问题?

【问题讨论】:

  • 有什么理由不只是使用web deploy
  • 我根本不知道如何使用我的服务器来处理它。如何在我的服务器中使用它以及我需要向 Web 部署向导提供哪些信息?
  • IIS 会缓存一些实际上是 Web 服务的 DLL 文件。如果它们被调用一次,它们将被缓存并加载,因此它们成为写保护的。不确定这是否有帮助。但是,如果您只需要更改不是 Web 服务的静态文件,为什么不使用 FTP 客户端呢?
  • 我正在使用 FTP 客户端。我要发布时如何停止此缓存。
  • 如果在发布前回收应用程序池会怎样?

标签: c# asp.net-mvc iis dll publish


【解决方案1】:

我也有同样的问题。现在我在发布之前回收应用程序池,这将释放 dll 文件上的所有锁。

希望尽快找到更好的解决方案。

【讨论】:

  • 在发布之前,有人还建议recycleapplication pool。但是用户提到他不知道它有效,所以请用圆顶台阶扩展您的答案。
  • 抱歉我的回复晚了。我采取的步骤如下: 1. 打开 IIS 管理器 2. 展开服务器名称 3. 单击应用程序池 4. 选择运行当前网站的应用程序池。 5. 在右侧菜单中,单击回收。这将释放对在您再次发布项目时重新创建的 dll 文件之一的锁定。 6. 发布您的 MVC 网站。现在它将起作用。希望这会有所帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多