2010-01-06 76 views
4

我們遇到了一個問題,即我們的ASP.NET MVC應用程序因未知原因重新啓動。關閉的原因是ASP.NET MVC應用程序本身重新啓動

「Bin應用程序目錄中的子目錄已更改或重命名。」

有問題的文件竟然是C:\ Users \ Jason \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ f691a68c \ a1593a1e \ hash \ hash.web。

值得注意的是,我們在Application_Start中啓動了一個NServiceBus客戶端,如果我們註釋掉該行,我們的web應用程序不會自行重啓。問題是:1)hash.web做了什麼,2)這個問題與NServiceBus有關嗎?

回答

4

你在你的應用程序中使用log4net的呢?在我們的一些環境中,我們將log4net日誌記錄文件放到與應用程序相同的目錄中(即bin目錄),這會導致應用程序重新啓動。將日誌文件移出該目錄可解決問題。

+0

log4net是原因。謝謝。 – Jason 2010-01-06 19:22:37

3

你需要弄清楚什麼是接觸hash.web文件:一個可能的原因是病毒掃描。用Process Monitor監視文件。

如果可能,請從自動病毒掃描以及Web內容目錄中排除Temporary ASP.NET Files目錄和子目錄。

在.NET 2.0中,可以通過HKLM \ Software \ Microsoft \ ASP.NET \ FCNMode鍵禁用FileChangesMonitoring,值爲1將禁用文件更改監視。禁用此的缺點是,如果你禁用它,應用程序將不會,如果你改變的web.config等

興趣點重新啓動:ASP.NET File Change Notifications, exactly which files and directories are monitored?

+0

這是打擊文件的Visual Studio網絡服務器。 – Jason 2010-01-06 02:07:17

+1

這發生在我的本地開發框中。我提到的Visual Web Server是WebDev.WebServer.EXE – Jason 2010-01-06 02:26:04

+2

感謝您的反對票。我沒有意識到在Stackoverflow上只允許(或關心)與生產環境相關的問題。 – Jason 2010-01-06 07:48:01