您所在的位置:首頁 > 軟件教程 > 視頻教程 > 電腦學習 > r如何配置Config.web

r如何配置Config.web

2017-10-13  來源:互聯網  次閱讀

 ASP.NET提供了一個豐富而可行的配置系統,以幫助管理人員輕松快速的建立自己的WEB應用環境。ASP.NET提供的是一個層次配置架構,可以幫助WEB應用、站點、機器分別配置自己的擴展配置數據。ASP.NET的配置系統具有以下優點:

●ASP.NET允許配置內容可以和靜態內容、動態頁面和商業對象放置在同一應用的目錄結構下。當管理人員需要安裝新的ASP.NET應用時,只需要將應用目錄拷貝到新的機器上即可。
●ASP.NET的配置內容以純文本方式保存,可以以任意標準的文本編輯器、XML解析器和腳本語言解釋、修改配置內容。
●ASP.NET 提供了擴展配置內容的架構,以支持第三方開發者配置自己的內容。
●ASP.NET配置文件的更修被系統自動監控,無須管理人員手工干預。
 
4.2.2配置文件的規則
ASP.NET的配置文件是基于XML格式的純文本文件,存在于應用的各個目錄下,統一命名為“config.web”。它決定了所在目錄及其子目錄的配置信息,并且子目錄下的配置信息覆蓋其父目錄的配置。
WINNT\Microsoft.NET\Framework\版本號\下的config.web為整個機器的根配置文件,它定義了整個環境下的缺省配置。
缺省情況下,瀏覽器是不能夠直接訪問目錄下的config.web文件。
在運行狀態下,ASP.NET會根據遠程URL請求,把訪問路徑下的各個config.web配置文件疊加,產生一個唯一的配置集合。舉例來說,一個對URL: http://localhost\webapp\owndir\ test.aspx的訪問,ASP.NET會根據以下順序來決定最終的配置情況:
1..\Microsoft.NET\Framework\v.1.00\config.web (缺省配置文件)
2..\webapp\config.web (應用的配置)
3..\webapp\owndir\config.web (自己的配置)
4.2.3配置文件的語法規則
1)標識
配置內容被置于config.web文件中的標記<configuration>和</configuration>之間。
格式:
<configuration>
配置內容
</configuration>
 
2)配置段句柄說明
ASP.NET的配置文件架構并未指定任何文件格式或者是支持的配置屬性。相反的,它提出了“配置段句柄申明”的概念來支持任意的用戶定義配置段。
格式:
<configsections>
<add name=欲定義配置段名 type=處理的句柄函數 />
</configsections>
 
3)配置段
具體定義配置的內容,供應用使用。
 
以下例子定義了一個“httpmodules”配置段,設置了系統http相關的處理模塊
 
<configuration>
 
<configsections>
<add name="httpmodules" type="System.Web.Configuration.HttpModules
ConfigurationHandler" />
</configsections>
 
<httpmodules>
<add type="System.Web.SessionState.CookielessSessionModule" />
<add type="System.Web.Caching.OutputCacheModule" />
<add type="System.Web.SessionState.SessionStateModule" />
<add type="System.Web.Security.WindowsAuthenticationModule" />
<add type="System.Web.Security.CookieAuthenticationModule" />
<add type="System.Web.Security.PassportAuthenticationModule" />
<add type="System.Web.Security.CustomAuthenticationModule" />
<add type="System.Web.Security.UrlAuthorizationModule" />
<add type="System.Web.Security.FileAuthorizationModule" />
</httpmodules>
 
</configuration>
 
4.2. 4ASP.NET定義的標準配置段
1)httpmodule段:定義了應用的http請求的處理模塊以及諸如安全、日志之類的應用方式
2)httphandlers段: 負責映射URLs到IhttpHandler類
3)sessionstat 段:負責配置http模塊的會話狀態
4)globalization 段:配置應用的公用設置
5)compilation段:配置ASP.NET的編譯環境
6)trace   段:配置ASP.NET的跟蹤服務
7)security段: ASP.NET的安全配置
8)iisprocessmodel 段: 在IIS上配置ASP.NET的處理模式
9)browercaps 段: 配置瀏覽器的兼容部件
4.2. 5一個配置讀出的例子
1)config.web配置文件
 
<!--config.web 請放入FormCfg.aspx所在目錄-->
<configuration>
<!--申明一個test配置段-->
<configsections>
<add name="test" type="System.Web.Configuration.DictionarySectionHandler" />
</configsections>
 
<test>
<!--配置一個鍵key,其內容為just a configure test-->
 
<add key="key" value="just a configure test" />
</test>
 
</configuration>
 
2)讀出其內容
 
<!--文件名:Application/FormCfg.aspx-->
<html>
<head>
<script language="VB" runat=server>
sub page_load(s as object ,e as eventargs)
'取出test配置段的key鍵的值
Dim CfgSection As Hashtable = Context.GetConfig("test")
Dim Msg As String = CStr(CfgSection("key"))
 
lblMsg.text=Msg
end sub
</script>
<title>
配置信息的讀取
</title>
</head>
 
<body>
<center>
config.web中"test"配置段中key的內容為:
<asp:label id=lblmsg runat=server />
</center> 
</body>
 
</html>
 
3)運行結果
 
 
 
4.2. 6Config.web配置實例
<configuration>
<!--定義用戶應用的公用設置,如SQL的sql連接串等等-->
<appsettings>
</appsettings>
 
<!--設置瀏覽器的兼容性部件-->
<browsercaps>
</browsercaps>
 
<!--編譯環境設置,非調試模式-->
<compilation debugmode="false">
<!--缺省編譯語言為vb,以后可以不再在Page中定義腳本語言-->
<compilers defaultlanguage="vb">
<!--以MSVSA.DLL編譯.vb為后綴的VB文件-->
<compiler language="VB" extension=".vb" type="MSVSA.dll#Microsoft.VB.Compiler"/>
</compilers>
 
<assemblies>
<!--加入對System.Data的引用-->
<add assembly="System.Data" />
<!--去掉對System.Data的引用-->
<remove assembly="System.IO" />
<!--去掉config.web中包含或繼承來的引用-->
<clear />
</assemblies>
 
</compilation>
 
<!--設置應用全局環境-->
<!--文件、請求、返回以gb2312編碼,以保證瀏覽器正確顯示中文-->
<globalization fileencoding="gb2312"requestencoding="gb2312"
responseencoding="gb2312"/>
 
<!--定義用戶出錯的處理-->
<!--出錯缺省顯示defaultredirect指定的頁面,mode為on時,遵循customerrors配置段-->
<!--mode為off時,忽略用戶出錯,mode為remoteonly時,本地才顯示真正的出錯原因-->
<customerrors defaultredirect="AnErrorHasOccured.aspx?ErrNum=-1" mode="remote">
<!--當出錯碼為500時,顯示redirect指定的頁面-->
<error statuscode="500" redirect="AnErrorHasOccured.aspx?ErrNum=500"/>
</customerrors>
 
<!--指定目錄webapp的訪問權限-->
<location path="webapp” >
<!--非授權用戶不能進入webapp目錄-->
<security>
<authorization>
<deny users="?" />
</authorization>
</security>
</location>
 
<!--定義安全屬性-->
<security>
<authorization>
<!--角色為Adminstrators和所有的用戶訪問其指定的資源-->
<allow roles="Adminstrators"/>
<allow users="*" />
</authorization>
</security>
 
</configuration>

大家都在看

回到頂部

投稿說明 |下載聲明 |誠聘英才 | 法律聲明 | 版權聲明 | 網站地圖| 鄂ICP備14001111號-2 | 鄂公網安備 42018502000249號

本站所有軟件,都由網友上傳,如有侵犯你的版權,請發郵件給 [email protected]

安全認證 金山安全 騰訊管家 小紅傘

末平分野10手电子