asp.net 站点URLRewrite使用小记

IIS收到请求-->ISAPI用于处理该请求-->BeginRequest开始-->EndRequest结束-->输出Response
中间有好多其它的流程就不标记了,这里只是列出URLRewrite所走的流程。
其实就是在BeginRequest事件中调用HttpContext的RewritePath方法,将该请求重新“定位”至一个目标URL就完成了。
在站点的Global.asax文件BeginRequest方法中添加代码:


代码如下:

public class Global : System.Web.HttpApplication
{
protected void Application_BeginRequest(object sender, EventArgs e)
{
HttpContext context = HttpContext.Current;
if (context.Request.Path.Equals("/demo", StringComparison.InvariantCultureIgnoreCase))
{
context.RewritePath("~/demoList.aspx");
}
}
}

(0)

相关推荐

  • ASP.NET站点导航应用详解

    导航实际上给访问者提供了一个地图类似的东西,让访问者更快地找到想要的东西. 在2.0中引入了一个很重要的概念,那就是站点地图siteMap这样一个XML文件,但是它后缀不是XML. 若要为站点创建一致的.容易管理的导航解决方案,可以使用asp.net站点导航.asp.net站点导航提供下列功能: 在了解了一些基本知识后,我们来做一个简单的导航的例子. 1.首先创建一个master html代码: <%@ Master Language="C#" AutoEventWireup=&

  • 导致Asp.Net站点重启10个原因小结分析

    1. 回收应用程序池会导致站点重启,记录的原因是: HostingEnvironment initiated shutdown HostingEnvironment caused shutdown 2. 修改应用程序池回收规则会导致重启,记录的重启原因: HostingEnvironment initiated shutdown HostingEnvironment caused shutdown 3. 在IIS中修改站点的名字,不会导致重启 4. 修改站点根目录的配置文件web.config,

  • 设置ASP.NET页面的运行超时时间详细到单个页面及站点

    全局超时时间 服务器上如果有多个网站,希望统一设置一下超时时间,则需要设置 Machine.config 文件中的 ExecutionTimeout 属性值. Machine.config 文件位于 %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\ 目录中. 例如: 复制代码 代码如下: <httpRuntime executionTimeout="90" maxRequestLength="409

  • Asp.net给站点某目录增加Aspnet用户

    using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControl

  • Asp.net中处理一个站点不同Web应用共享Session的问题

    1.问题描述: 系统S中有M1,M2,M3,M4四个模块,每个模块都是一个web应用.其中一个模块中设置Session后在其他模块中无法读取. 2.问题原因: 一个WEB应用相当于一个站点,应用与应用之间不可能共享Session. 3.解决方法: 1)  将四个web应用包含在同一个解决方案中 (注:调整.webinfo文件使解决方案能构正常运行) 2) 新建一个web应用Main,该web应用包含在解决方案S中,并直接存放在S目录下(即与虚拟目录S相对应). 3) 在Main应用中添加其他四个

  • asp.net 支持多语言站点的实现方法

    1,在web站点中新建两个resources文件如下 Resources.resx中的文件信息 Resources.en-us.resx中的文件信息 Default.aspx的代码 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Culture="Aut

  • ASP.NET 站点地图(sitemap)简明教程

    还好,现在有这个机会,就权当自己的笔记吧!.以下讲一下最简单的创建形式. 站点地图,在每一个网站都必须用的一种技术.它是用来给用户导航作用的,以便告诉用户现在的位置.特别是对那些目录很深的网页,这种效果就犹为明显. 比如 天涯社区>天涯论坛>海口...这种形式. 1.新建一个站点地图(和新建aspx一样),tour.sitemap.下面是默认情况生成的xml文件. 复制代码 代码如下: <?xml version="1.0" encoding="u

  • 分享下页面关键字抓取www.icbase.com站点代码(带asp.net参数的)

    复制代码 代码如下: <?php/** * HOST: www.icbase.com *///set_time_limit(0);// base functionfunction curl_get($url, $data = array(), $header = array(), $timeout = 15, $port = 80, $reffer = '', $proxy = ''){ $ch = curl_init(); if (!empty($data)) { $data = is_arr

  • 充分利用ASP.NET的三种缓存提高站点性能的注意方法

    ASP.NET提供三种主要形式的缓存:页面级输出缓存.用户控件级输出缓存(或称为片段缓存)和缓存API. 尽早缓存:经常缓存  您应该在应用程序的每一层都实现缓存.向数据层.业务逻辑层.UI或输出层添加缓存支持.内存现在非常便宜-因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高. 页面级输出缓存 最简单的缓存形式,只是在内存中保留为响应请求而发送的HTML的副本. 要实现页面输出缓存,只要将一条OutputCache指令添加到页面即可. <%@ OutputCache Du

  • 如何建立ASP.NET站点

    其实对于建立ASP.NET站点小编刚开始也是一头雾水,经过网上查找资料进行了整理,下面分享给大家. 1. 建立站点专用用户(新建两个站点专用用户,hebcai.com 隶属于Guests 组,hebcai.com _wpg 则隶属于IIS_WPG(ASP.NET 专用用户). (1)从"我的电脑"的右键菜单中选择"管理",打开"计算机管理",从"本地用户的组"中选择"用户",然后从右侧列表窗口中的右键菜单中

  • asp.net Web站点风格切换的实现

    Web站点风格切换的实现 引言 Web站点的风格切换是很常见.也很受大家欢迎的功能,比如大家熟知的博客园就提供了几十款风格模板供大家选择.在Asp.Net中,我们可以通过模板页master page和主题theme来实现网站的风格切换,但是.Net提供的默认设置不够强大和灵活.本文将向大家介绍如何在.Net提供的方法上进行改进和扩展,以提供更加强大的网站风格切换功能. 效果预览:http://www.tracefact.net/Demo/StyleSetting/default.aspx NOT

随机推荐