asp.net伪静态配置备忘


总之,感觉网站的URL上面有参数是一件很别扭的事情,一方面很容易被注入,另一方面,参数传递很容易泄露一些有用的信息。

而这篇文章主要针对的是网站URL显示的伪静态化,这样就抛弃了直接生成纯静态页的麻烦,而且能够很好的保护用户隐私,同时网站安全性也会有一定性能的提升。

主要操作过程如下:

首先,我们需要一个微软的URLReWriter组件,这里的下载地址我给提供下:

http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

然后就是新建一个网站,然后通过“添加引用”把这个dll文件添加到项目中。

我建立的网站页面是一个简单的前台新闻发布系统,页面如下:

然后就是列表页面:

然后就是上面的标题为“3333333”的详细信息显示页面,具体的显示页面为:

那么针对这样的页面,我们来进行伪静态化,首先是需要配置webconfig

如下图所示:

要注意的就是其中的<LookFor></LookFor><SendTO></SendTO>节点,写到LookFor节点中的URL路径是对外公布的URL路径,而SendTO节点中的URL路径则是IIS进行解析的时候返回的真实的路径。上图中节点一部分就是只要是类似字母d后面跟数字的都交给NewsListaspx带参返回解析;而节点二部分就是只要是类似字母dd后面跟数字的都交给NewsDetails.aspx带参返回处理;而节点三就是把html请求页面转为aspx请求返回。

还需要在<HttpHandlers>节点下面添加如下模块:

这些设置好后,但是我们的IIS默认是不能够直接解析html后缀的(只要是没添加),那么就需要配置IIS,配置路径如下:

打开IIS—》右击网站》属性》切换到“主目录”标签》点击“配置”按钮》切换到“映射”标签》双击“.aspx”,在弹出的窗口中,复制“可执行文件”后面的字符串》单击“添加”》输入拷贝的可执行文件路径---à去掉“检查文件是否存在”勾选框,最后应用即可。

配置完成后,在你的网站上面,只要类似有

<a href='NewsList.aspx?ID=<%#Eval(ID)%>'><%#Eval("Name") %></a>

修改成

<a href= d<%#Eval("ID") %>.html'><%#Eval("Name") %></a>

并且把

<a href='NewsDetails.aspx?NewsID=<%#Eval(ID)%>'><%#Eval("Title") %></a>

修改成

<a href='dd<%#Eval("ID") %>.html'><%#Eval("Title") %></a>

最后利用iis访问即可,设置完毕



相关阅读:
了解jQuery技巧来提高你的代码
ASP.NET应用XML技术实现Web报表打印
CSS 超出隐藏实现限制字数的功能代码(多浏览器)
chr(9)、chr(10)、chr(13)、chr(32)、chr(34)讲解
PHP session常见问题集锦及解决办法总结
ASP.NET 2.0 中的数据源控件
C#教程:声明和调用扩展方法
ACCESS集锦
SQL2005的默认端口的修改方法
正确修改Linux的系统时间
GD输出汉字的函数的分析
JavaScript实现Sleep函数的代码
Windows回收站高效使用技巧
页面(PAGE)标记(TAGS)
快速导航

Copyright © 2016 phpStudy |