发布于 2016-07-02 01:28:42 | 240 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

ASP.NET

ASP.NET 是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。


当我们想做一个站群或想为每一个会员的主页设置为一个二级域名时,总是想拼命的去找些组件来实现。
虽然最后是实现了,但身为程序员的我,却总是感觉利用其他不开源的组件自己总把握不了技术的核心。其实在net中微软已经为我们留下了接口,让我们为所欲为了。

首先我们可以通过一张图大概了解下.net的生命周期。

从 上图可以看出来,针对每个不同用户的请求,服务器都会创建一个新的HttpContext实例直到请求结束,服务器销毁这个实例。而 Ihttpcontext是httpcontext对外公开的接口,它包含了2个方法:dispose()和Init(HttpApplication context),我们可以实现Ihttpcontext从而达到httpcontext。
关键代码:
 
HttpApplication app = (HttpApplication)sender; 
HttpContext context = app.Context; 
string url = context.Request.Url.AbsoluteUri; //完整url 
string turl = url.Split('.')[0]; 
string surl = turl.ToLower().Replace("http://", ""); 
StringBuilder strb = new StringBuilder(); 
strb.Append(url); 
strb.Append(surl); 

app.Context.RewritePath(path, string.Empty, strb.ToString().Split('?')[1]);
在web.config里配置下:
<system.web>里添加如下代码。
<httpModules>
<add type="Common.URLRewriter" name="Common" />
最后设置IIS的时候记得要把IIS的表头设置为空。
运行下你就能实现了
</httpModules>

最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务