ASP.NET 配置文件层次结构和继承(2)
点击次数:27 次 发布日期:2008-11-26 12:28:04 作者:源代码网
|
源代码网推荐 源代码网推荐 配置级别 文件名 文件说明 源代码网推荐 服务器 Machine.config Machine.config文件包含服务器上所有 Web 应用程序的 ASP.NET 架构。此文件位于配置合并层次结构的顶层。 源代码网推荐 根Web Web.config 服务器的 Web.config 文件与 Machine.config 文件存储在同一个目录中,它包含大部分 system.web 配置节的默认值。运行时,此文件是从配置层次结构中的从上往下数第二层合并的。 源代码网推荐 网站 Web.config 特定网站的 Web.config 文件包含应用于该网站的设置,并向下继承到该站点的所有 ASP.NET 应用程序和子目录。 源代码网推荐 ASP.NET应用程序根目录 Web.config 特定 ASP.NET 应用程序的 Web.config 文件位于该应用程序的根目录中,它包含应用于 Web 应用程序并向下继承到其分支中的所有子目录的设置。 源代码网推荐 ASP.NET 应用程序子目录 Web.config 应用程序子目录的 Web.config 文件包含应用于此子目录并向下继承到其分支中的所有子目录的设置。 源代码网推荐 客户端应用程序目录 ApplicationName.configApplicationName.config 文件包含 Windows 客户端应用程序(而非 Web 应用程序)的设置。 源代码网推荐 源代码网推荐 ProcessModel 元素 源代码网推荐 源代码网推荐 processModel 元素(ASP.NET 设置架构)元素配置用于服务器(包括服务器上的所有 ASP.NET 应用程序)的处理模型。因此,processModel 设置只能放在 Machine.config 文件中,而且不能被任何 Web.config 文件中的设置重写。 源代码网推荐 源代码网推荐 对 processModel 元素的更改将只有在辅助进程重新启动之后才生效,而不是像其他配置元素那样在设置更改之后立即生效。 源代码网推荐 源代码网推荐 注意 源代码网推荐 源代码网推荐 当 ASP.NET 以辅助进程隔离模式运行在 Internet 信息服务 (IIS) 6.0 中时,将使用 IIS 6.0 进程模型,并将忽略 Machine.config 文件的 processModel 节中的设置。若要配置进程标识、循环或其他进程模型值,请使用 IIS 管理器来配置应用程序的 IIS 辅助进程。 源代码网推荐 源代码网推荐 运行时计算配置设置 源代码网推荐 源代码网推荐 当服务器接收对特定 Web 资源的请求时,ASP.NET 使用位于所请求 URL 的虚拟目录路径中的所有配置文件按层次结构计算该资源的配置设置。本地配置设置将重写父配置文件中的设置。 源代码网推荐 源代码网推荐 这些设置计算一次,随后将缓存以供后续请求使用。ASP.NET 自动监视对文件进行的更改,并在该文件的层次结构内的任何配置文件发生更改时重新计算缓存。当服务器收到对特定 URL 的请求时,ASP.NET 将使用缓存中的配置设置层次结构来找到所请求的资源。 源代码网推荐 源代码网推荐 除非配置节元素中包括 restartOnExternalChanges="false" 属性,或者配置设置包含在使用 configSource 属性链接到 Web.config 文件的单独文件中,否则当配置发生更改时,应用程序将重新启动。 源代码网推荐 源代码网推荐 单个文件中配置的多个 ASP.NET 资源 源代码网推荐 源代码网推荐 当管理大量配置设置或者管理 ISP 设置中的客户端网站时,将多个位置的设置存储在一个 Web.config 文件中可能会非常有用。使用 location 元素的 path 属性,可以对存储在应用程序子目录中的多个特定的 ASP.NET 资源进行配置。 源代码网推荐 源代码网推荐 有关如何使用 location 元素的信息,请参见如何:使用位置设置配置特定目录。 源代码网推荐 源代码网推荐 虚拟目录中的设置和物理目录中的设置发生冲突 源代码网推荐 源代码网推荐 虚拟目录的配置设置独立于物理目录结构,必须小心组织虚拟目录以防止出现配置问题。例如,您可能有一个具有如下物理目录结构且名为 MyResource.aspx 的 ASP.NET 文件。 源代码网推荐 源代码网推荐 C: 源代码网推荐 源代码网推荐 Subdir1 源代码网推荐 源代码网推荐 Subdir2 源代码网推荐 源代码网推荐 MyResource.aspx 源代码网推荐 源代码网推荐 另外,您还可能拥有一个位于 Subdir1 的配置文件、一个映射到 c:Subdir1 的名为 Vdir1 的虚拟目录以及一个映射到 c:Subdir1Subdir2 的名为 Vdir2 的虚拟目录。如果客户端使用 URL http://localhost/vdir1/subdir2/MyResource.aspx 访问物理位置为 c:Subdir1Subdir2MyResource.aspx 的资源,则该资源将从 Vdir1 继承配置设置。但是,如果客户端使用 URL http://localhost/vdir2/MyResource.aspx 访问同样的资源,则该资源不从 Vdir1 继承设置。以这种方式创建虚拟目录可能会导致意外的结果,甚至会导致应用程序失败。建议您不要嵌套虚拟目录,如果不得不这样做的话,请只使用一个 Web.config 文件。 源代码网推荐 源代码网推荐 限制 ASP.NET 继承 源代码网推荐 源代码网推荐 您可能希望限制配置设置的继承,以增强应用程序的性能、保持高可靠性并简化管理。限制功能由 allowOverride、lockAttributes、lockAllAttributesExcept、lockAllElementsExcept、lockItem 和 lockElements 属性控制。有关这些属性的更多信息,请参见msdn。 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
