应用Web.Config配置网站

1.配置数据库连接

  在ASP.NET中配置数据库连接的两种方式: appSettings和connectionStrings

  命名空间:

using System.Configuration;

  1)appSettings

 <appSettings>
    <add key="sqlCon" value="server=.;database=xxx;uid=xxx;password=xxx;"/>
 </appSettings>

  获取值:

string sqlCon = ConfigurationManager.AppSettings["sqlCon"].ToString();

  2)connectionStrings

<connectionStrings>
    <add name="sqlCon" connectionString="server=.;database=xxx;uid=xxx;password=xxx;"/>
</connectionStrings>

  获取值:

string sqlCon = ConfigurationManager.ConnectionStrings["sqlCon"].ToString();

使用connectionStrings的好处:

1)可将连接字符串加密,使用MS的一个加密工具即可。

2)可直接绑定到数据源控件,而不必写代码读出来再赋值给控件。

3)可方便的更换数据库平台,如换为Oracle数据库,只需要修改providerName

  (摘自http://www.cnblogs.com/kerry1986/archive/2009/07/08/1518895.html

2.配置Session变量的生命周期

<system.web>
      <compilation debug="true" targetFramework="4.5" />
      <httpRuntime targetFramework="4.5" />
      <sessionState mode="InProc" timeout="1"></sessionState>
</system.web>

ASP.NET中Session的状态保持是由web.config文件中的标记下的标记的mode属性来决定的。该属性有四种可能的值:Off、Inproc、StateServer和SQlServer。

  设为Off会禁用Session。

  Inproc是缺省的设置,这种模式和以前的ASP的会话状态的方法是类似的,会话的状态会被保存在ASP.NET进程中,它的优点是显而易见的:性能。进程内的数据访问自然会比夸进程的访问快。然而,这种方法Session的状态依赖于ASP.NET进程,当IIS进程崩溃或者正常重起启时,保存在进程中的状态将丢失。

  为了克服Inproc模式的缺点,ASP.NET提供了两种进程外保持会话状态的方法。

  ASP.NET首先提供了提供了一个Windows服务:ASPState,这个服务启动后,ASP.NET应用程序可以将mode属性设置为“SateServer”,来使用这个Windows服务提供的状态管理方法。

  除了在web.config文件中设置mode属性为StateServer外,还必须设置运行StateServer服务器的IP地址和端口号.如果在IIS所在的机器运行StateServer则IP地址就是127.0.0.1,端口号通常是42424.配置如下:

  mode=”StateServer”

  stateConnectionString="tcpip=127.0.0.1:42424"

  使用这种模式,会话状态的存储将不依赖IIS进程的失败或者重启,会话的状态将存储在StateServer进程的内存空间中。

  另一种会话状态模式是SQLServer模式。这种模式是将会话的状态保存在SQL Server数据库中的。使用这种模式前,必须至少有一台SQL Server服务器,并在服务器中建立需要的表和存储过程。.NET SDK提供了两个脚本来简化这个工作:InstallSqlState.sql和UnInstallSqlState.sql。这两国文件存放在下面路径中:

  \Winnt\Microsoft.NET\Framework\\

  要配置SQL Server 服务器,可以在命令行中运行SQL Server提供的命令行工具osql.exe

  osql -s [server name] -u [user] -p [password]

  例如:

  osql -s (local) -u as -p “”-i InstallSqlState.sql

  做好必要的数据库准备工作后,将web.config文件中的sessionstate元素的mode属性改为”sqlserver”,并指定SQL连接字符串。具体如下:

  mode="SQLServer"

  sqlConnectionString="data source=127.0.0.1;userid=sa;password=;Trusted_Connection=yes"

  使用SQLServer模式处了可以使Session的状态不依赖于IIS服务器之外,还可以利用SQL Server的集群,使状态存储不依赖于单个的SQL Server,这样就可以为应用程序提供极大的可靠性。

  (摘自http://blog.sina.com.cn/s/blog_4c4d1047010009we.html)    

ASP.NET中客户端Session状态的存储

Session状态应该存储在两个地方,分别是客户端和服务器端。客户端只负责保存相应网站的SessionID,而其他的Session信息则保存在服务器端。在ASP中,客户端的SessionID实际是以Cookie的形式存储的。如果用户在浏览器的设置中选择了禁用Cookie,那末他也就无法享受Session的便利之处了,甚至造成不能访问某些网站。为了解决以上问题,在ASP.NET中客户端的Session信息存储方式分为:Cookie和Cookieless两种。

ASP.NET中,默认状态下,在客户端还是使用Cookie存储Session信息的。如果我们想在客户端使用Cookieless的方式存储Session信息的方法如下:

找到当前Web应用程序的根目录,打开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"
/>

这段话中的cookieless="false"改为:cookieless="true",这样,客户端的Session信息就不再使用Cookie存储了,而是将其通过URL存储。关闭当前的IE,打开一个新IE,重新访问刚才的Web应用程序,就会看到类似下面的样子:其中,http://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245)/default.aspx中黑体标出的就是客户端的Session ID。注意,这段信息是由IIS自动加上的,不会影响以前正常的连接。

  (摘自http://blog.csdn.net/sniper007/article/details/9280401) 

3.配置上传文件的大小与时间

 

<system.web>
    <httpRuntime maxRequestLength="4096" executionTimeout="100"/>
</system.web>

4.配置连接默认错误页

<system.web>
    <customErrors mode="On" defaultRedirect="~/error.htm"/>
</system.web>

5.配置验证级别

  为禁止访问者不通过登陆页面而强制进入其他页面。

<authentication mode = "Forms">
  <form name = "myCookie" loginUrl="login.aspx">
  </forms>
  </authentication>
<authorization>
  <deny users="?">
</authorization>
时间: 2024-10-31 04:15:46

应用Web.Config配置网站的相关文章

使用Web.config配置网站信息

最近使用web.config来配置网站信息,在此做一个整体的介绍,方便自己查阅,也方便大家了. 一.ASP.NET配置文件 常用的ASP.NET配置文件包括machine.config与web.config ①machine.config:提供整个机器的默认配置,对该文件的修改影响该机器的所有站点 ②web.config:一般用于应用程序级别的配置文件,对其所作的修改不影响其他站点,也可用于站点下的子目录 二.自定义错误 [csharp] view plaincopyprint? <span>

Asp.net中的web.config配置

目录 Asp.net中的web.config配置... 1 一. 配置文件保存位置... 2 二. 配置文件加载顺序... 2 三. 配置文件节点介绍... 3 1. . 3 2. . 5 3. . 5 4. . 6 . 11 四. 针对配置文件的一些编程操作... 11 1. 运行时进行配置文件的修改... 11 2. 配置节点的加密... 12 web.config是asp.net中保存配置信息(比如数据库连接字符串等)的重要文件.它是基于xml的文本文件方式放在Web应用程序的任何目录中,

asp.net中web.config配置节点大全详解【转】

web.config 文件查找规则: (1)如果在当前页面所在目录下存在web.config文件,查看是否存在所要查找的结点名称,如果存在返回结果并停止查找. (2)如果当前页面所在目录下不存在web.config文件或者web.config文件中不存在该结点名,则查找它的上级目录,直到网站的根目录. (3)如果网站根目录下不存在web.config文件或者web.config文件中不存在该节点名则在%windir%"Microsoft.NET"Framework"v2.0.

web.config配置(转载)

Asp.net中的web.config配置 By Bendon 20101123 目录 Asp.net中的web.config配置... 1 一. 配置文件保存位置... 2 二. 配置文件加载顺序... 2 三. 配置文件节点介绍... 3 1. <configSections>. 3 2. <appSettings>. 5 3. <connectionStrings>. 5 4. <system.web>. 6 <location>. 11

.Net中Web.config 配置详解

花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <?xml version="1.0"?> <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置.可以使用 Visual Studio 中的“网站”->“Asp.Net 配置”选项. 设置和注释的完整列表在 machine.config.

Web.config配置数据库连接

web.config配置数据库连接 第一种:取连接字符串 string connString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["SqlConnStr"].ConnectionString; 或者 protected static string connectionString = ConfigurationManager.ConnectionStrings["SqlCon

Asp.net Web.Config - 配置元素 caching

记得之前在写缓存DEMO的时候,好像配置过这个元素,好像这个元素还有点常用. 一.caching元素列表 元素 说明 cache 定义全局应用程序缓存设置. 可选的元素. outputCache 指定应用程序范围的输出缓存设置. 可选的元素. outputCacheSettings 指定可以应用于应用程序中页的输出缓存设置. 可选的元素. sqlCacheDependency 为 ASP.NET 应用程序配置 SQL 缓存依赖项. 可选的元素. 1.cache 属性 特性 说明 disableM

web.config配置详细说明

(一).Web.Config是以XML文件规范存储,配置文件分为以下格式 1.配置节处理程序声明    特点:位于配置文件的顶部,包含在<configSections>标志中. 2.特定应用程序配置    特点: 位于<appSetting>中.可以定义应用程序的全局常量设置等信息. 3.配置节设置    特点: 位于<system.Web>节中,控制Asp.net运行时的行为. 4.配置节组    特点: 用<sectionGroup>标记,可以自定义分组

Asp.net Web.Config - 配置元素 httpCookies

1.属性 属性 说明 domain 可选的 String 属性. 设置 Cookie 域名. httpOnlyCookies 可选的 Boolean 属性. 脚本(javascript之类)能够访问 默认值为 false. requireSSL 可选的 Boolean 属性. 获取一个指示是否需要安全套接字层 (SSL) 通信的值. 默认值为 false. 该设置将被公开 requireSSL 配置的任何其他功能(如 authentication 的 forms 元素(ASP.NET 设置架构)