我在访问一个网站的时候,总是习惯性的先查看打开的网站url,如果发现有类似&符号,心里就会产生一种比较别扭的感觉,这也许和我以前利用这种方式破解网站而养成的习惯有关吧。
总之,感觉网站的URL上面有参数是一件很别扭的事情,一方面很容易被注入,另一方面,参数传递很容易泄露一些有用的信息。
而这篇文章主要针对的是网站URL显示的伪静态化,这样就抛弃了直接生成纯静态页的麻烦,而且能够很好的保护用户隐私,同时网站安全性也会有一定性能的提升。
主要操作过程如下:
首先,我们需要一个微软的URLReWriter组件,这里的下载地址我给提供下:
然后就是新建一个网站,然后通过“添加引用”把这个dll文件添加到项目中。
我建立的网站页面是一个简单的前台新闻发布系统,页面如下:
要注意的就是其中的<LookFor></LookFor>和<SendTO></SendTO>节点,写到LookFor节点中的URL路径是对外公布的URL路径,而SendTO节点中的URL路径则是IIS进行解析的时候返回的真实的路径。上图中节点一部分就是只要是类似字母d后面跟数字的都交给NewsListaspx带参返回解析;而节点二部分就是只要是类似字母dd后面跟数字的都交给NewsDetails.aspx带参返回处理;而节点三就是把html请求页面转为aspx请求返回。
还需要在<HttpHandlers>节点下面添加如下模块:
这些设置好后,但是我们的 )
修改成
<a #Eval("ID") Eval(
并且把
<a )
修改成
<a #Eval("ID") Eval(
最后利用iis访问即可,设置完毕