正能量不良网站推荐2020,网站编辑如何做,wordpress链接提交插件,株洲网站建设企业aspnetcore 实现简单的伪静态化Intro在我的活动室预约项目中#xff0c;有一个公告模块#xff0c;类似于新闻发布#xff0c;个人感觉像新闻这种网页基本就是发布的时候编辑一次之后就再也不会改了#xff0c;最适合静态化了#xff0c; 静态化之后用户请求的就是静态文件… aspnetcore 实现简单的伪静态化Intro在我的活动室预约项目中有一个公告模块类似于新闻发布个人感觉像新闻这种网页基本就是发布的时候编辑一次之后就再也不会改了最适合静态化了 静态化之后用户请求的就是静态文件基本不再需要服务器端查询数据库甚至服务器端渲染可以一定程度上提升服务器的处理能力以及优化用户体验而且这种静态化的url对 SEO 比较友好。由于我的这个项目正在开发中迁移起来不太方便所以使用的是伪静态化看上去是访问的 *.html实际上并不是 html而是需要服务器处理的。GetStarted配置路由信息注意顺序伪静态的路由要在默认路由之前app.UseMvc(routes
{ routes.MapRoute(Notice, /Notice/{path}.html, new { controller Home, action NoticeDetails }); routes.MapRoute(name: areaRoute, template: {area:exists}/{controllerHome}/{actionIndex}); routes.MapRoute( name: default, template: {controllerHome}/{actionIndex});
});控制器代码/// summary
/// 公告详情
/// /summary
/// param namepath访问路径/param
/// returns/returns
public async TaskActionResult NoticeDetails(string path)
{ if (string.IsNullOrWhiteSpace(path)) { return RedirectToAction(Notice); } try { var noticeBll HttpContext.RequestServices.GetServiceIBLLNotice(); var notice await noticeBll.FetchAsync(n n.NoticeCustomPath path.Trim()); if (notice ! null) { notice.NoticeVisitCount 1; await noticeBll.UpdateAsync(notice, x x.NoticeVisitCount); return View(notice); } else { return RedirectToAction(Notice); } } catch (Exception ex) { Logger.Error(ex); throw; }
}实际效果https://reservation.weihanli.xyz/Notice/test-notice.htmlQAQ:为什么我们要做伪静态化A:站点下的 *.html 文件有利于网站的 SEO 优化有利于百度和google爬虫爬你的网站SEO做的好有利于提高搜索排名【SEO的水也很深、感兴趣的可以自己找资料研究】。Q:什么是伪静态化什么是完全静态化他们的区别是什么A:伪静态化是针对完全静态化来说的完全静态化是会实际保存内容到一个 *.html 文件中而伪静态化则是通过服务器端技术通过匹配 url 符合一定的模式就重新交给指定的程序处理并返回内容。简单来说完全静态化会有一个实际存在的静态文件伪静态化则不存在需要较多服务器端的处理。Q:伪静态化和完全静态化哪个好A:这个问题更好的问法应该是这样的“什么时候适合用伪静态化什么时候适合用完全静态化”一个事物既然存在就必然有它存在的道理存在即合理如果没有存在的意义必将死去。完全静态化一般会根据一个模板生成一个实际存在的 *.html 文件完全静态化不需要太多的服务器端处理客户端请求这个文件时因为是一个静态文件服务器会直接将文件内容返回给客户端不需要额外的服务器处理。完全静态化会减少服务器的压力。伪静态化服务器上并没有静态 *.html文件只是在服务器断使用了Rewrite将动态URL进行重写使动态URL表现为静态URL以满足网页URL静态需求但网页依然为动态调用的是需要很多服务器端处理的比如url的模式匹配从数据库中查询数据。总结虽然完全静态化URL的网页有打开速度快的优点但是网站内容巨大的话势必会使网站的体积变大很多会有很多的静态化文件网站迁移的话很麻烦另一方面如果网站内容很多的时候修改模板的话再次静态化的时候会是一个比较大的工作量。实际使用的话还是需要根据自己实际需要来选取。Referencehttps://github.com/WeihanLi/ActivityReservation/blob/dev/ActivityReservation