Asp.net

ASP.Net 無法在 PRODUCTION 中創建/卷影複製

  • June 3, 2015

我們最近更新了一個相當大的 ASP.NET 網站(約 1500 次 alexa 流量排名)以使用在 Windows Server 2008 R2 上執行的 VS2010 和 .NET 4.0

從那以後,當我們部署站點的新版本時,我們偶爾會在這篇文章中註意到同樣的錯誤: ASP.Net cannot create/shadow copy 錯誤消息是:Cannot create/shadow copy ‘xxxx, Version=4.0.4301.26898, Culture=中立,PublicKeyToken=null’ 當該文件已經存在時

但是,與該文章不同的是,該錯誤僅發生在我們的生產環境中,並且僅在某些伺服器上發生。

在我們發布新版本的程式碼後,我們會回收所有 AppPools 並開始出現錯誤。

進一步的 AppPool 回收似乎解決了這個問題,但是我真的很想知道我們如何首先避免這個問題?

我們終於解決了“無法創建/卷影複製”問題。問題原來是由於我們的 AppPool 回收和我們的目錄副本的時間。它的工作原理是這樣的:

  1. 將主網站複製到:伺服器\目錄
  2. 為網站回收應用程序池
  3. 將小型管理站點複製到 server\otherdirectory

問題是我們的管理站點是主站點的虛擬目錄,並且使用了相同的 AppPool。這在 .NET 2.0 下執行良好,但我認為我們可以確定升級到 .NET 4.0 時的故障。如果我們這樣做,似乎執行得很好:

  1. 將主網站複製到:伺服器\目錄
  2. 將小型管理站點複製到 server\otherdirectory
  3. 為網站回收應用程序池

引用自:https://stackoverflow.com/questions/7759784