2019/3/14 8:48:36
一、認識Web.config文(wén)件(jiàn)
Web.config文(wén)件(jiàn)是一個(gè)XML文(wén)本文(wén)件(jiàn),它用(yòng)來儲存 ASP.NET Web 應用(yòng)程序的(de)配置信息(如(rú)最常用(yòng)的(de)設置ASP.NET Web 應用(yòng)程序的(de)身份驗證方式),它可(kě)以出現在應用(yòng)程序的(de)每一個(gè)目錄中。當您通過VB.NET新建一個(gè)Web應用(yòng)程序後,默認情況下會(huì)在根目錄自動創建一個(gè)默認的(de)
Web.config文(wén)件(jiàn),包括默認的(de)配置設置,所有(yǒu)的(de)子目錄都(dōu)繼承它的(de)配置設置。如(rú)果您想修改子目錄的(de)配置設置,您可(kě)以在該子目錄下新建一個(gè)Web.config文(wén)件(jiàn)。它可(kě)以提供除從父目錄繼承的(de)配置信息以外的(de)配置信息,也(yě)可(kě)以重寫或修改父目錄中定義的(de)設置。
在運行(xíng)時對Web.config文(wén)件(jiàn)的(de)修改不需要重啓服務就可(kě)以生效(注:<processModel> 節例外)。當然Web.config文(wén)件(jiàn)是可(kě)以擴展的(de)。您可(kě)以自定義新配置參數并編寫配置節處理(lǐ)程序以對它們進行(xíng)處理(lǐ)。
二、web.config配置文(wén)件(jiàn)(默認的(de)配置設置)以下所有(yǒu)的(de)代碼都(dōu)應該位于
<configuration>
<system.web>
和(hé)
</system.web>
</configuration>
之間,出于學習(xí)的(de)目的(de)下面的(de)示例都(dōu)省略了這段XML标記
1、<authentication> 節
作用(yòng):配置 ASP.NET 身份驗證支持(爲Windows、Forms、PassPort、None四種)。該元素隻能(néng)在計(jì)算機、站點或應用(yòng)程序級别聲明(míng)。<authentication> 元素必需與<authorization> 節配合使用(yòng)。
示例:
以下示例爲基于窗體(Forms)的(de)身份驗證配置站點,當沒有(yǒu)登陸的(de)用(yòng)戶訪問需要身份驗證的(de)網頁,網頁自動跳轉到(dào)登陸網頁。
<authentication mode="Forms" >
<forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>
</authentication>
其中元素loginUrl表示登陸網頁的(de)名稱,name表示Cookie名稱
2、<authorization> 節
作用(yòng):控制(zhì)對 URL 資源的(de)客戶端訪問(如(rú)允許匿名用(yòng)戶訪問)。此元素可(kě)以在任何級别(計(jì)算機、站點、應用(yòng)程序、子目錄或頁)上(shàng)聲明(míng)。必需與<authentication> 節配合使用(yòng)。
示例:以下示例禁止匿名用(yòng)戶的(de)訪問
<authorization>
<deny users="?"/>
</authorization>
注:您可(kě)以使用(yòng)user.identity.name來獲取已經過驗證的(de)當前的(de)用(yòng)戶名;可(kě)以使用(yòng)
web.Security.FormsAuthentication.RedirectFromLoginPage方法将已驗證的(de)用(yòng)戶重定向到(dào)用(yòng)戶剛才請求的(de)頁面.具體的(de)實例請參考:
Forms驗證 http://www.fanvb.net/websample/dataauth.aspx
3、<compilation>節
作用(yòng):配置 ASP.NET 使用(yòng)的(de)所有(yǒu)編譯設置。默認的(de)debug屬性爲“True”.在程序編譯完成交付使用(yòng)之後應将其設爲True(Web.config文(wén)件(jiàn)中有(yǒu)詳細說明(míng),此處省略示例)
4、<customErrors>
作用(yòng):爲 ASP.NET 應用(yòng)程序提供有(yǒu)關自定義錯誤信息的(de)信息。它不适用(yòng)于 XML Web services 中發生的(de)錯誤。
示例:當發生錯誤時,将網頁跳轉到(dào)自定義的(de)錯誤頁面。
<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">
</customErrors>
其中元素defaultRedirect表示自定義的(de)錯誤網頁的(de)名稱。mode元素表示:對不在本地(dì) Web 服務器(qì)上(shàng)運行(xíng)的(de)用(yòng)戶顯示自定義(友(yǒu)好的(de))信息。
5、<httpRuntime>節
作用(yòng):配置 ASP.NET HTTP 運行(xíng)庫設置。該節可(kě)以在計(jì)算機、站點、應用(yòng)程序和(hé)子目錄級别聲明(míng)。
示例:控制(zhì)用(yòng)戶上(shàng)傳文(wén)件(jiàn)最大(dà)爲4M,最長時間爲60秒,最多請求數爲100
<httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>
6、 <pages>
作用(yòng):标識特定于頁的(de)配置設置(如(rú)是否啓用(yòng)會(huì)話(huà)狀态、視圖狀态,是否檢測用(yòng)戶的(de)輸入等)。<pages>可(kě)以在計(jì)算機、站點、應用(yòng)程序和(hé)子目錄級别聲明(míng)。
示例:不檢測用(yòng)戶在浏覽器(qì)輸入的(de)内容中是否存在潛在的(de)危險數據(注:該項默認是檢測,如(rú)果您使用(yòng)了不檢測,一要對用(yòng)戶的(de)輸入進行(xíng)編碼或驗證),在從客戶端回發頁時将檢查加密的(de)視圖狀态,以驗證視圖狀态是否已在客戶端被篡改。(注:該項默認是不驗證)
<pages buffer="true" enableViewStateMac="true" validateRequest="false"/>
7、<sessionState>
作用(yòng):爲當前應用(yòng)程序配置會(huì)話(huà)狀态設置(如(rú)設置是否啓用(yòng)會(huì)話(huà)狀态,會(huì)話(huà)狀态保存位置
深圳市南山區南山街(jiē)道南海(hǎi)大(dà)道西(xī)桂廟路(lù)北陽光(guāng)華藝大(dà)廈1棟4F、4G-04
咨詢電話(huà):136 8237 6272
大(dà)客戶咨詢:139 0290 5075
業(yè)務QQ:195006118
技術(shù)QQ:179981967