首页 > IT职业 > IT生活 > Asp.net实现页面伪静态
从页面Url及页面名称上看,你会发现静态页面和伪静态是一样的。伪静态的页面后缀可能是html,htm,cshtml等,只是改变了url的表现形式,实际上还是动态的页面。在SEO方面,伪静态和静态页面的功能是相同,但伪静态本质上还是动态页面,不会像静态页面那样占用服务器空间资源。
这里通过Url重写的方式实现伪静态。
首先通过Nuget安装UrlRewrite包。

修改web.config,添加如下内容
<!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=301880 --><!--([w]+)表示,1到n个字母或数字或下划线或汉字组成-->
添加的内容如下:
<!--([w]+)表示,1到n个字母或数字或下划线或汉字组成-->
然后,在路由配置中,将html的路由配置上。
public class RouteConfig
{ public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Index.html",
url: "{controller}/{action}.html",
defaults: new { controller = "Home", action = "Index" }
);
routes.MapRoute(
name: "Index",
url: "{controller}/{action}",
defaults: new { controller = "Home", action = "Index" }
);
}
}
到这里已经结束了,我们可以通过Home/index或者home/index.html两种方式访问首页。
浏览


看到伪静态页面和动态页面实际上是一样的。但*.html的物理文件在服务器上是不存在的。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/93/viewspace-2800995/ ,如需转载,请注明出处,否则将追究法律责任。