2011-03-15 65 views
3

當我打開IIS中我的ASP.NET網站,並嘗試打開.NET信任級別,我得到一個錯誤信息:如何確定哪個父配置文件鎖定了web.config設置?


.NET信任級別 執行此操作時發生錯誤。

詳細說明:

文件名:\ \ C:\的Inetpub \ wwwroot的\ MyApp的\的web.config

行號:445

錯誤:這部分配置不能在此路徑中使用。當部分鎖定在父級別時,會發生這種情況。鎖定可以是默認的(overrideModeDefault =「Deny」),也可以是帶有overrideMode =「Deny」或legacy allowOverride =「false」的位置標籤。


我檢查了一些地方,但我還沒有找到任何似乎會鎖定該設置。有沒有一種系統的方法來確定設置被鎖定的位置?

我正在使用IIS 7.5和.NET 3.5 SP1。

回答

0

IIS和ASP.NET都支持鎖定特定的配置節。典型的場景是嵌套的配置文件 - 例如,您可能在子目錄中有一個配置文件,從網站級配置文件覆蓋一些配置設置(在子級別)。所以在這種情況下,父母可以決定允許配置文件中的哪些部分覆蓋。我相信這個概念自2.0版本以來就存在於ASP.NET中,而自IIS 7開始出現xml配置並且它也支持類似的情況。

this article瞭解鎖定ASP.NET配置節和this article在IIS中一樣。需要注意的是配置文件的層次結構,從機器的配置和根級web配置這樣開始 - 因此,在偶然的情況下,您的網絡配置可能試圖覆蓋從這些文件中允許的部分。

3

我還沒有想出如何確定究竟哪個文件鎖定任何特定的設置,但如果選擇在IIS中的最高層節點(它應該是你的機器名),然後打開功能委派,狀態欄將會讀取'Configuration:'localhost'root web.config'或類似的東西。

在這裏,您可以修改其設置在子級別被鎖定。

Feature Delegation in IIS

相關問題