2010-10-19 60 views
7

我有一個web.config文件,這在我當前運行在IIS7上的解決方案中非常大。在IIS7下超出Web配置大小限制0x80070032

它的工作完美我的dev的服務器上,但是我遇到的錯誤0x80070032

我目前的解決方案採用了一個非常大的web.config文件「配置錯誤,因爲它超過了最大文件大小不能讀取配置文件」。我的CMS應用程序的體系結構需要大量的配置設置。

有什麼方法可以擴展這個大小限制,或者我可以將web.config文件分割成更小的文件嗎?

回答

16

你有沒有嘗試添加此註冊表項:

HKLM\SOFTWARE\Microsoft\InetStp\Configuration

然後設置此DWORD值:如果您的系統正在運行64位的Windows,但您的應用程序池運行MaxWebConfigFileSizeInKB

32位模式,那麼你可能需要設置在:

HKLM\SOFTWARE\Wow6232Node\Microsoft\InetStp\Configuration

如果您web.config文件是因爲有大量的重寫規則,那麼你可以分離到這些他們自己的文件過大:

Storing URL rewrite mappings in a separate file

+0

感謝提示Kev。 – user325558 2010-10-21 10:46:56

+0

這幫了我兩次。希望我能兩次上癮!謝謝。 – 2012-04-13 14:04:50

+0

記得從提升的提示符運行'iisreset'使其工作。與右鍵單擊IIS管理器中的根項目相同,請按停止,然後單擊開始。 – 2015-10-06 11:17:27

6

是您的CMS解決方案Sitecore的?如果是這樣,Sitecore有兩個選項可以將其配置從主web.config文件中分離出來。

Sitecore支持使用< sc:include >標記來包含來自單獨文件的一部分配置。你只要把< SC:包括>標籤無論配置會去:

<sitecore database="SqlServer"> 
    <sc.include file="C:\Program Files\SitecoreSampleSite\sitecore.config"/> 
</sitecore> 

然後你在< SC的父啓動配置:在包含文件中包括>(在這種情況下Sitecore的):

<sitecore database="SqlServer"> 
    <sc.variable name="dataFolder" value="/data"/> 
    <sc.variable name="mediaFolder" value="/upload"/> 
    <sc.variable name="tempFolder" value="/temp"/> 
    ... 
</sitecore> 

Sitecore自己在標準配置中使用它,所以你可以通過在他們的標準配置文件中查找來看到很多這樣的例子。

您的other option將取出一些配置並將其放入app_config/includes目錄中。在運行時,Sitecore會查找其中的任何.config文件,然後將該文件中的任何配置添加到主配置中。

該配置文件需要具有完整的Sitecore配置結構。