易截截图软件、单文件、免安装、纯绿色、仅160KB

asp.net用url重写URLReWriter实现任意二级域名

好久没有写技术文章,如果大家看不明白,就多看几篇,汗,或者,在文章的后面回复(这是最有效的办法),我会尽力帮助大家解答疑惑.
来找这篇文章的,应该都知道什么叫二级域名吧,废话就不说了.但是讨论前,先要明白一个思想问题.
很多朋友一直考虑不清(我前几天也一直搞不明白)的问题是,我键入一个地址后,怎么这个url就被重写了?
第一步:在浏览器键入了一个地址,比如http://blog.knowsky.com,点回车后,都发生了什么?
为了把问题简单化,我来这样解释:
第二步:首先,键入的地址被解析,最终来到了一台web服务器.交给IIS处理.在.net的世界中,IIS会把这样的请求再交给一个web处理器 处理,最后,该 web处理器 把处理的结果返回给浏览器,显示给用户看.
请不用忽略这样一个问题,第二步的所有事情都是在服务器端做的.在这些事情进行的时候,用户端的浏览器上面的地址不会改变.即使最后 web处理器 把处理结果返回来的时候,上面的地址也不会改变.
一开始键入的url,只是起一个敲门的作用,门敲完了,作用就算结束了,只有你的眼睛可以看到那个地址,浏览器,服务器等都不知道这个地址.
然后要明白的问题是,所谓url重写,也只是web开发人员知道的内幕情况,用户根本不知道发生了什么,他认为自己键入的地址就是应该出来屏幕上显示的结果.也就是说,我们在幕后控制要显示的内容.
接下来要考虑的是,怎么样控制显示的内容?
从上面说的过程,很明显要在 web处理器 的工作这一步动手脚.
一个最简单的考虑是,用户敲入了一个简单的不带任何参数地址, http://blog.knowsky.com然后我们把这个地址改成一个符合程序需要的带参数的地址, http://kerry.com?lover=notus,最后处理之.
所谓的url重写,就是在这一步.
用.net的术语来说,我们需要给应用程序注册一个httpmodule,用来处理特定的url
注册httpmodule,在web.config,
处理url,在我们提供的httpmodule程序中
大体相当于这样的一段程序
//用我们的httpmodule程序截获原始url
String OriginalUrl=” http://blog.knowsky.com”;
//处理原始url,得到最后需要的url,值为http://kerry.com?lover=notus
String FinalUrl=Rewrite(OriginalUrl);
// context重新将url在内部发送给IIS处理
context.RewritePath(FinalUrl);
接下来,我们来实现url重写.
第一步:确定要对哪些url执行重写,即制定重写规则
第二步:编写httpmodule处理程序
第三步:将编写的httpmodule整合入web程序,开始工作.
上面就是url重写的基本知识,而用ur


相关文档:

ASp.NET学习网(www.17aspx.com)上线了

经过一个多月的准备,我的小站ASP.NET学习网(www.17aspx.com)终于上线了。界面图如下:
ASP.NET学习网(www.17aspx.com),为ASP.NET学习者提供教程、示例、源码、工具等学习资料,推动ASP.NET学习者之间的交流。涉及ASP.NET、ASP.NET MVC、LINQ、VS2010、WPF、Silverlight、C#3.5等方面。 ......

ASP.NET中三层结构的运用

ASP.NET中的三层结构分为表示层(UI),业务逻辑层(BLL),数据访问层(Models,DAL,IDAL,DALFactory,DB),下面我来说说我对学习三层结构的运用。
首先我给大家说说这三层都是什么意思。
1.       表示层:web项目自然是应用程序的表示层,就是访问的站点,它提供所有与用户进行交互的 ......

asp.net 程序自动提交登陆表单并保持Session及Cookie

1、通过附加一个cookiecontainer到httprequest对象中,可以得到登录后返回的代表SESSION ID的COOKIE。
2、将此COOKIE包含在一个cookiecontainer中并附加到另一个HTTPREQUEST请求中,则可以实现SESSION的还原。
部分主要代码:
        CookieContainer cookieContainer =& ......

asp.net域名绑定、删除方法

#region 域名绑定方法
    public static void AddHostHeader(int siteid, string ip, int port, string domain)//增加主机头(站点编号.ip.端口.域名)
    {
        DirectoryEntry site = new DirectoryEntry("IIS://localhost/W3SVC/" + siteid) ......

Asp.net回车默认按钮事件解决方案


一、
Js
设置默认按钮
       
function
document.onkeydown()
       
{
           
var
e=event
.srcElement;
        &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号