重温ASP.NET的配置信息(简单、常用)

2024-04-17 00:32

本文主要是介绍重温ASP.NET的配置信息(简单、常用),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

来源:http://www.cnblogs.com/kevin-moon/archive/2009/01/22/1379789.html

 

     ASP.NET中的配置文件由web.config和machine.config构成。
     每当我们安装net framework的时候,machine.config文件都会被创建到"C:/WINDOWS/Microsoft.NET/Framework/[Version]/CONFIG"文件夹下,并且每个Web应用程序都会继承这些配置信息,同时我们也可以通过Web应用程序中的web.config文件来覆盖它。
     在Web应用程序中,我们依然可以在每个子文件夹中去建立web.config,并用它来覆盖上层的配置。如下图:

Web.config中常用的配置信息


<authentication>
     被用于,当客户端向服务器发送请求的时候,服务器需要去验证客户端的身份,我们可以设定"None"、"Forms"、"Windows"、"Passport"这四种验证方式。
     1、如果你不需要验证身份,可以设定 :<anthentication mode="none" >
     2、一般情况下,我们使用"windows"验证, <anthentication mode="Windows" >,这种验证方式是通过IIS来处理的,IIS给我们下面几种验证模式去选择,

     3、表单验证 这种验证方式是Web应用程序来处理。
           <anthentication mode="Forms" >
                <Forms name = "form1"  LoginUrl = "login.aspx">
           </anthentication>
     4、Passport验证,客户端通过Microsoft的Passport数据库来验证的,优点是你可以拥有一个已存在的验证信息,而不需要去做注册用户名这些动作,不过它是收费的...!如果你要用这种验证方式,你需要在你的电脑上安装Passport Software Development Kit。
           <anthentication mode="Passport" >
                <Passport redirectUrl = "interanlUrl">
           </anthentication>

<authorization>
      控制客户端对服务器URL的访问
           <anthorization>
                <allow users = "" roles="" verbs = "">
               <deny users = "" roles="" verbs = "">

           </anthorization>       
      users:用户名列表,roles:角色列表,verbs:请求的方式(GET,POST)

<compilation>
     配置 ASP.NET 用于编译应用程序的所有编译设置。其中最常用的就是debug(是否应编译调试二进制文件)和defaultLanguage(在动态编译文件中使用的默认编程语言),

<customerErrors>
     设置Web应用程序的异常信息,当应用程序出现异常的时候,可以通过设定这个来给用户一个友好的异常信息。
           <customerErrors defaultRedirect="..." mode = "on">
                <error statusCode="403" redirectUrl="..." />
               <error statusCode="404" redirectUrl="..." />

           </customerErrors>       
     "on":指定启用自定义错误。如果未指定 defaultRedirect,用户将看到一般性错误。 
     "off":指定禁用自定义错误。这允许显示标准的详细错误。
     "remoteOnly":指定仅向远程客户端显示自定义错误并且向本地主机显示 ASP.NET 错误。这是默认值。

<globalization>
     用于设置应用程序的编码格式和语言环境
      <globalization requestEncoding="utf-8" responseEncoding="utf-8" />     

<httpRuntime>
     用于设定应用程序运行时的一些信息
      <httpRuntime appRequestQueueLimit="50" executionTimeout="300" /> 
     "appRequestQueueLimit":服务器中请求队列的最大限制数量,如果超过这个最大值,服务器会返回503错误(服务器太忙)
     "executionTimeout":处理一个请求的超时限制。

<trace>
     跟踪应用程序的执行,我们有两种跟踪级别:页面级别和应用程序级别,应用程序级别对所有的页面都会进行跟踪,如果pageOutput="true",那么跟踪信息将显示在每个页面的底部,我们也可以到应用程序的根目录下,找 trace.axd去看跟踪日志。
   <trace enabled="false" requestLimit="10" pageOutput="true" traceMode="sortBytime" localOnly ="true" />
   如果我们只希望在页面级别上面的话,只需要在每页上设置trace="true"就可以了。

<identity>

     配置 Web 应用程序的标识
      <identity impersonate="false" username="..." password="..." />
     "impersonate":是否对每个请求使用客户端模拟。

<sessionState>
     设置服务器如何去保存session,session有五种方式:
     1、Inpro:默认的方式,在应用程序的进程上保存session。
     2、StateServer:将session保存在aspnet_state进程上面,它独立与应用程序进程,可以在同一服务器也可以用专门一台服务器。
     3、SQLServer:将session保存在SqlServer数据库中,不过在使用它之前需要安装 InstallSQLState.sql脚本,

     4、自定义的保存方式,通过重写 SessionStateStoreProviderBase基类来实现自己的保存方式,

     5、不启用Session

<appSetting>
     设置一些需要在应用程序中用到键/值信息
      <appSetting>
           <add key="..." value="..." />
      </appSetting>

加密配置文件
      当你的配置文件中有一些敏感信息的时候,你也许希望对其中的内容进行加密。
     ASP.NET中有两种支持的加密方式:RSA和DPAPI。同时我们对如何进行加密,也有两种方式。
     1、程序方式
        Configuration myConfig  =  WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
        ConfigurationSection mySettings 
=  myConfig.GetSection( " mySection " );
        
if  (mySettings.SectionInformation.IsProtected)
        {
            mySettings.SectionInformation.UnprotectSection();
        }
        
else
        {
            mySettings.SectionInformation.ProtectSection(
" DataProtectionConfigurationProvider " ); ;
        }
        myConfig.Save();
     2、命令行的方式
     我们可以用命令行工具 aspnet_regiis.exe去对config文件进行加密,当你使用这种方式进行加密的时候,你需要去设置一些参数:
     "-pe":config文件中的配置节
     "-app":应用程序的相对路径
     "-prov":加密的提供程序
 例如,我们对 http://localhost/MyApp下的配置文件进行加密


     放假咯!过年咯!

这篇关于重温ASP.NET的配置信息(简单、常用)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/910329

相关文章

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

Python中操作Redis的常用方法小结

《Python中操作Redis的常用方法小结》这篇文章主要为大家详细介绍了Python中操作Redis的常用方法,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解一下... 目录安装Redis开启、关闭Redisredis数据结构redis-cli操作安装redis-py数据库连接和释放增