Web.config詳解
一、認識Web.config文件
Web.config XML ASP.NET Web ASP.NET Web .NETWebWeb.configWeb.config
).Web.ConfigXML,
<configSections>
: <appSetting> .
3.
: <system.Web>Asp.net.
4.
: <sectionGroup><configSections><sectionGroup>.
().
.
2.<appSetting>
:
I.
<appSettings>
<add key="Conntction" value="server=192.168.85.66;userid=sa;password=;database=Info;"/>
<appSettings>
.
II.<appSettings>
<add key="ErrPage" value="Error.aspx"/>
<appSettings>
.
3.<compilation>
:
<compilation
defaultLanguage="c#"
debug="true"
/>
I.default language: ,C#VB.net.
IIdebug : trueaspx falseaspx
true,false.
4.<customErrors>
:
<customErrors
mode="RemoteOnly"
defaultRedirect="error.aspx"
<error statusCode="440" redirect="err440page.aspx"/>
<error statusCode="500" redirect="err500Page.aspx"/>
/>
I.mode : On,Off,RemoteOnly 3On; Offasp.net; RemoteOnlyWeb.
II.defaultRedirect: URL.
.
IV. redirect:URL.
5.<globalization>
:
<globalization
requestEncoding="utf-8"
responseEncoding="utf-8"
fileEncoding="utf-8"
/>
I.requestEncoding: .
II.responseEncoding: .
III.fileEncoding: aspx,asax.
6.<sessionState>
:
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
I.mode: off,Inproc,StateServer,SqlServer
II. stateConnectionString :Asp.net
truecookie .
V. TimeOut: .
7.<authentication>
:
<authentication mode="Forms">
<forms name=".ASPXUSERDEMO" loginUrl="Login.aspx" protection="All" timeout="30"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>
I.Windows: IIS
Passport cookie
Forms:
I.Name: Http cookie.
II.LoginUrl: URL
cookie.
: All None Encryption Validation
Cookie.
c. EncryptionCookie
Cookie
Cookie. .
Web.config<processModel> Web.config文件是可以擴展的。你可以自定義新配置參數並編寫配置節處理程序以對它們進行處理。
web.config
<configuration>
<system.web>
</system.web>
</configuration>
XML標記。
1<authentication>
ASP.NET WindowsFormsPassPortNone< authentication> <authorization> 節配合使用。
示例:
Forms
<authentication mode="Forms" >
<forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>
</authentication>
loginUrlnameCookie名稱。
2<authorization>
URL <authentication> 節配合使用。
<authorization>
<deny users="?"/>
</authorization>
user.identity.nameweb.Security.FormsAuthentication.RedirectFromLoginPage.具體的
3<compilation>
ASP.NET debug“True”.FalseWeb.config文件中有詳細說明,此處省略示例)
4<customErrors>
ASP.NET XML Web services 中發生的錯誤。
<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">
</customErrors>
defaultRedirectmode Web ()信息。
5<httpRuntime>
ASP.NET HTTP 運行庫設置。該節可以在計算機、站點、應用程序和子目錄級別聲明。
4M60100
<httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>
6 <pages>
<pages>可以在計算機、站點、應用程序和子目錄級別聲明。
)(
7<sessionState>
作用:為當前應用程序配置會話狀態設置(如設置是否啟用會話狀態,會話狀態保存位置)。
<sessionState mode="InProc" cookieless="true" timeout="20"/>
</sessionState>
mode="InProc"SAL
Cookie(False
表示:會話可以處於空閑狀態的分鍾數
8<trace>
ASP.NET 跟蹤服務,主要用來程序測試判斷哪裏出錯。
Web.config
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
enabled="false"
(trace.axd) Web 服務器
Web.config
Web.config
1. <configSections> </configSections> .NET Framework
<configSections> 區域之後為聲明的節做實際的配置設置。
<configuration>
<configSections>
<section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</configSections>
<appSettings>
<add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>
</appSettings>
<system.web>
......
</system.web>
</configuration>
Web.config ConfigurationSettings.AppSettings Web.config
二、web.config中的session配置詳解
Web.config
< sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
SessionsessionState
< sessionState mode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="number of minutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sql connection string"
stateNetworkTimeout="number of seconds"
/>
Session
Ø Off Session
SessionASP
Session
SessionSQL Server
Ø cookieless Session
Cookieless
Cookie
Session20
Session"tcpip=127.0.0.1:42424”modeStateServer
sqlConnectionString SQL Server"data source= localhost;Integrated Security=SSPI;Initial Catalog=northwind"mode SQLServer
stateNetworkTimeout StateServerSessionWebTCP/IP10
ASP.NETSession
SessionSessionSessionIDSessionASPSessionIDCookieCookieSession ASP.NETSessionCookieCookieless
ASP.NETCookieSessionCookielessSession
WebWeb.Config
< sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
cookieless="false"cookieless="true"Session CookieURLIEIEWeb
https://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245) /default.aspxSession IDIIS自動加上的,不會影響以前正常的連接。
ASP.NETSession
SessionState.aspx< body>< /body>
< scriptrunat="server">
Sub Session_Add(sender As Object, e As EventArgs)
Session("MySession") = text1.Value
span1.InnerHtml = "Session data updated! < P>Your session contains: < font color=red>" & Session("MySession"). ToString() & "< /font>"
End Sub
Sub CheckSession(sender As Object, eAs EventArgs)
If (Session("MySession")Is Nothing) Then
span1.InnerHtml = "NOTHING, SESSION DATA LOST!"
Else
span1.InnerHtml = "Your session contains: < font color= red>" & Session("MySession").ToString() & "< /font>"
End If
End Sub
< /script>
< formrunat="server">
< inputtype="text"runat="server"name="text1">
< inputtype="submit"runat="server"OnServerClick="Session_Add"
value="Add to Session State " name="Submit1">
< inputtype="submit"runat="server"OnServerClick="CheckSession"
value=" View Session State " name="Submit2">
< /form>
< hrsize="1">
< fontsize="6">< spanrunat="server" />< /font>
SessionState.aspxSession信息。
Session
Web.config
< sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
modeInProc
ASPSessionIISIISSessionIISIISSessionSQL ServerSessionASP.NET
SessionState.aspxSessionIISIISIIS(NT4IIS@#$%^&)SessionState.aspxSession信息,發現信息已經丟失了。
Session
->ASP.NET State ServiceSessionWindows-> aspnet_state.exeSession
Web.configmodeStateServerIE SessionState.aspxSessionIISSessionState.aspxSession
SessionSessionmodeStateServerstateConnectionString192.168.0.1SessionIP192.168.0.2 stateConnectionString="tcpip=192.168.0.2:42424"192.168.0.2.NET FrameworkASP.NET State Services服務。
SessionSQL Server
SQL ServerSQL ServerSQL Server InstallSqlState.sqlSQL ServerSessionSessionSQL Server
[system drive]/winnt/Microsoft.NET/Framework/[version]/
SQL ServerASPStateSessiontempdb ASPStateTempSessionsASPStateTempApplicationsASP Application->SQL Server->ASPState_Job_DeleteExpiredSessionsASPStateTempSessions Session
Web.configmodeSQLServersqlConnectionString
sqlConnectionString="data source=localhost; Integrated Security=SSPI;"
data sourceSQL ServerIPSQL ServerIIS127.0.0.1 Integrated Security=SSPIWindowsASP.NETuserid=sa;password=SQL ServerSQL ServerActive Directory
SessionState.aspxSessionSession SQL ServerSessionSessionSQL Server中的,能幹什麼就看你的發揮了。
SessionASP.NETASP
WebWindowsUnix IISApacheSQL ServerOracle強大,但是,誰可以將他們如此完美的聯動到一起呢?所以說,雖然微軟每一方麵都不是太強,但是如果把微軟的東西都整合到一起,誰敢說他不強大呢?微軟就是微軟!
三、Asp.net 關於form認證的一般設置
asp.net form
web.configform
<authentication mode="Forms">
<forms name="auth" loginUrl="index.aspx" timeout="30"></forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>
2: ;
<configuration><system.web>,<system.web>..</system.web>;
---------------- userReg.aspx.
<location path="userReg.aspx">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
3 , ;
if()
System.Web.Security.FormsAuthentication.SetAuthCookie(, false);
四、訪問Web.config文件
ConfigurationSettings.AppSettings Web.config 文件示例:獲取上麵例子中建立的連接字符串。例如:
最後更新:2017-04-02 00:06:29