电竞比分网-中国电竞赛事及体育赛事平台

分享

web.config配置詳解

 zengbj 2010-05-17

<configuration> 所有.net配置文件所必須的根元素

 

<system.web> 實(shí)際asp.net配置設(shè)置的根元素

 

<!-- 動(dòng)態(tài)調(diào)試編譯

設(shè)置 compilation debug="true" 以啟用 aspx 調(diào)試。否則,將此值設(shè)置為

false 將提高此應(yīng)用程序的運(yùn)行時(shí)性能。

設(shè)置 compilation debug="true" 以將調(diào)試符號(hào)(.pdb 信息)插入到編譯頁(yè)中。

因?yàn)檫@將創(chuàng)建執(zhí)行起來(lái)較慢的大文件,所以應(yīng)該只在調(diào)試時(shí)將此值設(shè)置為 true,而在所有其他時(shí)候都設(shè)置為false。有關(guān)更多信息,請(qǐng)參考有關(guān)調(diào)試 asp.net 文件的文檔。

defaultlanguage="c#" 指定動(dòng)態(tài)編譯時(shí)使用的默認(rèn)編程語(yǔ)言,它的值可以是compilers標(biāo)記定義的任何語(yǔ)言。

tempdirectory 指編譯過(guò)程中存儲(chǔ)文件的目錄

-->

<compilation

defaultlanguage="c#"

debug="true"

/>

 

<!-- 自定義錯(cuò)誤信息

設(shè)置 customerrors mode="on" 或 "remoteonly" 以啟用自定義錯(cuò)誤信息,或設(shè)置為 "off" 以禁用自定義錯(cuò)誤信息。

為每個(gè)要處理的錯(cuò)誤添加 <error> 標(biāo)記。

"on" 始終顯示自定義(友好的)信息。如果沒(méi)有提供defaultredirect屬性‚則用戶將看到一般的錯(cuò)誤信息.

"off" 始終顯示詳細(xì)的 asp.net 錯(cuò)誤信息。顯示全部的錯(cuò)誤細(xì)節(jié)

"remoteonly" 只對(duì)不在本地 web 服務(wù)器上運(yùn)行的用戶顯示自定義(友好的)信息。出于安全目的,建議使用此設(shè)置,以便不向遠(yuǎn)程客戶端顯示應(yīng)用程序的詳細(xì)信息。

-->

<customerrors

mode="remoteonly"

/>

使用customerrors 元素,可以配置應(yīng)用程序響應(yīng)各種http錯(cuò)誤時(shí)的行為。例如,通過(guò)如下代碼,當(dāng)發(fā)生404錯(cuò)誤時(shí),就可以把頁(yè)面重新導(dǎo)向一個(gè)友好的頁(yè)面。

<customerrors defaultredirect=”standarderror.aspx” mode="remoteonly">

<error statuscode=”404” redirect=”filenotfound.htm”/>

</customerrors>

當(dāng)發(fā)生http錯(cuò)誤時(shí),上面的代碼將把用戶導(dǎo)向standarderror.aspx頁(yè)面。如果錯(cuò)誤是代碼404(即沒(méi)有發(fā)現(xiàn)文件)‚將把用戶導(dǎo)向filenotfound.htm。但是‚由于模式設(shè)置為remoteonly,所有本地的管理員將會(huì)看到真實(shí)的錯(cuò)誤信息,而不是被導(dǎo)向其它的頁(yè)面,但遠(yuǎn)程的客戶將會(huì)看到自定義的錯(cuò)誤頁(yè)面。

 

<!-- 身份驗(yàn)證

此節(jié)設(shè)置應(yīng)用程序的身份驗(yàn)證策略??赡艿哪J绞?"windows"、

"forms"、 "passport" 和 "none"

 

"none" 不執(zhí)行身份驗(yàn)證。

"windows" iis 根據(jù)應(yīng)用程序的設(shè)置執(zhí)行身份驗(yàn)證 包含全部的iis身份驗(yàn)證,此外,ntfs在文件和目錄上的權(quán)限將決定對(duì)目錄中資源的訪問(wèn)。

(基本、簡(jiǎn)要或集成 windows)。在 iis 中必須禁用匿名訪問(wèn)。

"forms" 您為用戶提供一個(gè)輸入憑據(jù)的自定義窗體(web 頁(yè)),然后

在您的應(yīng)用程序中驗(yàn)證他們的身份。用戶憑據(jù)標(biāo)記存儲(chǔ)在 cookie 中。

使用cookies去指出授權(quán)用戶。

"passport" 身份驗(yàn)證是通過(guò) microsoft 的集中身份驗(yàn)證服務(wù)執(zhí)行的,

它為成員站點(diǎn)提供單獨(dú)登錄和核心配置文件服務(wù)。

-->

<authentication mode="windows" />

下面是使用passport的身份驗(yàn)證的示例。在這個(gè)對(duì)目錄進(jìn)行配置的示例中,如果用戶沒(méi)有提供有效的passport,則把用戶導(dǎo)向login.aspx頁(yè)面。

<authentication mode=”passport”>

<passport redirecturl=”login.aspx”/>

</authentication>

下面的示例闡明了怎樣使用基于窗體的身份驗(yàn)證,以及怎樣把有效的用戶名和密碼保存在配置文件中:

<authentication mode=”forms”>

<forms name=”secureapplication”

loginurl=”/secureapplication/custlogin.aspx/”>

<credentials passwordformat=”clear”>

<user name=”admin” password=”admin”/>

</credentials>

</forms>

</authentication>

 

<!-- 授權(quán)

此節(jié)設(shè)置應(yīng)用程序的授權(quán)策略??梢栽试S或拒絕不同的用戶或角色訪問(wèn)

應(yīng)用程序資源。通配符: "*" 表示任何人,"?" 表示匿名

(未經(jīng)身份驗(yàn)證的)用戶。

-->

 

<authorization>

<allow users="*" /> <!-- 允許所有用戶 -->

<!-- <allow users="[逗號(hào)分隔的用戶列表]"

roles="[逗號(hào)分隔的角色列表]"/>

<deny users="[逗號(hào)分隔的用戶列表]"

roles="[逗號(hào)分隔的角色列表]"/>

-->

</authorization>

 

<!-- 應(yīng)用程序級(jí)別跟蹤記錄

應(yīng)用程序級(jí)別跟蹤為應(yīng)用程序中的每一頁(yè)啟用跟蹤日志輸出。

設(shè)置 trace enabled="true" 可以啟用應(yīng)用程序跟蹤記錄。如果 pageoutput="true",則

在每一頁(yè)的底部顯示跟蹤信息。否則,可以通過(guò)瀏覽 web 應(yīng)用程序

根目錄中的 "trace.axd" 頁(yè)來(lái)查看

應(yīng)用程序跟蹤日志。

-->

<trace

enabled="false"

requestlimit="10"

pageoutput="false"

tracemode="sortbytime"

localonly="true"

/>

默認(rèn)狀態(tài)下,trace元素處于激活狀態(tài),但是它的輸出沒(méi)有顯示給web頁(yè)面。在trace元素中也可以定義偵聽器,偵聽器其實(shí)是一些對(duì)象,使用那些對(duì)象,可以收聽、收集和發(fā)送各種消息。下面代碼中定義的偵聽器可以把跟蹤信息寫到日志文件(即文本文件中):

<trace enabled="true" requestlimit=”10” pageoutput=”false”>

<listeners>

<add name=”tracelistener”

type=”system.diagnostics.textwritertracelistener‚system”

initializedata=”tracelistener.log”/>

</listeners>

</trace>

 

<!-- 會(huì)話狀態(tài)設(shè)置

默認(rèn)情況下,asp.net 使用 cookie 來(lái)標(biāo)識(shí)哪些請(qǐng)求屬于特定的會(huì)話。

如果 cookie 不可用,則可以通過(guò)將會(huì)話標(biāo)識(shí)符添加到 url 來(lái)跟蹤會(huì)話。

若要禁用 cookie,請(qǐng)?jiān)O(shè)置 sessionstate cookieless="true"。

-->

默認(rèn)狀態(tài)下,asp.net通過(guò)發(fā)送用戶cookies(當(dāng)用戶關(guān)閉他們的瀏覽器時(shí),cookies將終止),對(duì)會(huì)話狀態(tài)進(jìn)行維護(hù)。

<sessionstate

mode="inproc" 指asp.net會(huì)話狀態(tài)的維護(hù)工作是在本地進(jìn)行的。

stateconnectionstring="tcpip=127.0.0.1:42424"

sqlconnectionstring="data source=127.0.0.1;trusted_connection=yes"

cookieless="false"

timeout="20"

/>

 

<!-- 全球化

此節(jié)設(shè)置應(yīng)用程序的全球化設(shè)置。

-->

web站點(diǎn)的用戶經(jīng)常要發(fā)送和接收文本,這是文本編碼格式的配置,默認(rèn)是rtf-8。

<globalization

requestencoding="gb2312"

responseencoding="gb2312"

/>

 

</system.web>

appsettings元素

<appsettings>元素處于<system.web>根配置之外,它是<configuration>部分的一個(gè)子元素。通過(guò)簡(jiǎn)單的指定一對(duì)名稱/值,就可以添加配置設(shè)置。如:

<appsettings>

<add key="websitename" value="my new website"/>

<add key="welcomemessage" value="welcome to my new website‚friend!"/>

</appsettings>

</configuration>

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多