Asp.Net实现伪静态的方式

伪静态能隐藏网站真实页面访问路径,提高网站安全性;可以自定义路径规则,简化路径,相对于传统的ASPX页面,可以让SEO更好的收录。

网站为什么要用伪静态?

伪静态能隐藏网站真实页面访问路径,还可以自定义路径规则,有利于SEO收录.

静态生成与伪静态有什么区别?

1.静态生成访问的是静态页面,数据更新需重新生成;伪静态生成访问的是动态页面,数据实时更新;
2.静态生成访问速度快,但占用服务器空间;伪静态访问速度相对慢,但不占服务器空间;
3.静态生成通常固定html格式后缀,需要服务器读写权限;伪静态后缀自定义,但需服务器配置支持.

伪静态实现方式:

1.项目网站添加引用URLRewriter.dll文件;
2.根目录下web.config添加dll配置(此步完成即可在VS中看效果);

  1. <!--伪静态重写声明-->  
  2. <configSections>  
  3.         <section name="RewriterConfig"   
  4. type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"/>  
  5. </configSections>  
  6. ...  
  7.  <!--伪静态重写规则-->  
  8.     <RewriterConfig>  
  9.         <Rules>  
  10.             <!--主页-->  
  11.             <RewriterRule>  
  12.                 <LookFor>~/notfound</LookFor>  
  13.                 <SendTo>~/aspx/404.aspx</SendTo>  
  14.             </RewriterRule>  
  15. <!--带参数-->  
  16.             <RewriterRule>  
  17.                 <LookFor>~/(.*?)/menu([0-9]+).aspx</LookFor>  
  18.                 <SendTo>~/aspx/loadpage.aspx?load=$1&amp;menuid=$2</SendTo>  
  19.             </RewriterRule>  
  20.         </Rules>  
  21.     </RewriterConfig>  
  22. ...  
  23. <system.web>  
  24.         <httpModules>  
  25.             <add type="URLRewriter.ModuleRewriter, URLRewriter"   
  26. name="ModuleRewriter"/>  
  27.         </httpModules>  
  28. ...  
  29. </system.web>  

3.IIS添加ISAPI映射.具体步骤: 打开IIS->当前网站右键属性->主目录->配置映射
3.1.添加带后缀伪静态:配置映射->添加->可执行文件浏览
->C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll->扩展名.html(伪静态路径后缀)->确认文件是否存在 取消打勾->确定
3.2.添加无扩展名伪静态:配置映射->插入->浏览->C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll ->确认文件是否存在 取消打勾->确定.

总结:伪静态实现方式其实很简单,添加DLL引用再配置规则,只是需要服务器IIS映射支持比较麻烦,有些服务器不支持.