手机版

aspnetcore实现简单的伪静态功能

时间:2021-08-21 来源:互联网 编辑:宝哥软件园 浏览:

介绍

在我的活动房间预订项目中,有一个公告模块,类似于新闻发布。个人认为像新闻这样的网页基本都是发布的,编辑一次就永远不会改变,最适合静态化。静态化后,用户请求静态文件基本不再需要服务器查询,甚至不再需要服务器渲染,可以在一定程度上提高服务器的处理能力,优化用户体验。此外,这个静态网址对搜索引擎优化很友好。

因为我的项目正在开发中,不方便迁移,所以我使用了伪静态,这似乎是一个被访问的*。html,但实际上它不是html,而是需要由服务器处理。

文档地址

配置路由信息,注意顺序,伪静态的路由应该在默认路由之前

app。UseMvc(routes={ routes。地图路线('通知','/通知/{路径}。html ',new { controller='Home ',action=' noticeDetails ' });路线。MapRoute(名称为: 'areaRoute ',模板: ' { area : exists }/{ controller=Home }/{ action=Index } ');路线。MapRoute(name: 'default ',template: ' {控制器=Home }/{操作=Index } ');});控制器代码:

///summary///公告详细信息////summary///param name='path '访问路径/param///returns/returns public async task action结果通知详细信息(字符串路径){ if(字符串。IsNullOrWhiteSpace(路径)){ returnredirectto action(' Notice ');}请尝试{ var noticeBll=HttpContext。request services . GetServiceIBLLNotice();var notice=await noticeBll。FetchAsync(n=n . notice stumpath==path。trim());如果(注意!=null) {注意。NoticeVisitCount=1;等待通知。UpdateAsync(notice,x=x . noticivitcount);返回视图(通知);} else { return redirectto action(' Notice ');} } catch (Exception ex) { Logger。错误(例如);扔;}}实际效果:

https://reservation.weihanli.xyz/Notice/test-notice.html

注意细节

质量保证

Q:为什么要做(伪)静态化?

*。A:网站下的html文件有利于网站的SEO优化,百度和谷歌爬虫爬你的网站,好的SEO有利于提高搜索排名【SEO的水也深,有兴趣的可以自己找资料研究】。

Q:什么是伪静态?什么是完全静态的?它们之间有什么区别?

A:的伪静态是针对完全统计化的,其中(完全)统计化实际上是把内容保存成a *。html文件,而伪静态则是将其交给指定的程序进行处理,并通过服务器端技术将url与某个模式匹配返回内容。

简单地说,(完全)静态化将有一个实际的静态文件,而伪静态不存在,需要更多的服务器端处理。

Q:伪静态和完全静态哪个好?

A:问这个问题比较好的方式应该是这样的:“什么时候用伪静态比较合适?什么时候适合使用完全静态化?”一个事物既然存在,就一定有它的真理。存在是合理的。如果没有意义,它就会死。

完全静态通常会生成一个实际的*。html文件,这不需要太多的服务器处理。当客户端请求此文件时,由于它是一个静态文件,服务器将直接将文件内容返回给客户端,而无需额外的服务器处理。完全静止会减轻服务器的压力。

没有静态*。html文件放在伪静态服务器上,服务器中只使用了Rewrite,动态URL被重写使其呈现为静态URL,从而满足网页URL的静态要求,但网页仍然是动态调用的,这需要大量的服务器处理,比如URL模式匹配和从数据库中查询数据。

总结:完全静态URL的网页虽然有打开速度快的优势,但是如果网站内容庞大,难免会让网站的体积变大很多,而且会有很多静态文件,所以迁移网站非常麻烦。另一方面,如果在网站内容大的时候修改模板,再静态的时候,工作量会比较大。实际使用中,还是需要根据自己的实际需求来选择。

参考

https://github.com/李维汉/活动保存/blob/dev/活动保存

摘要

以上是边肖介绍的aspnetcore的简单伪静态。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!如果你觉得这篇文章对你有帮助,请转载,请注明出处,谢谢!

版权声明:aspnetcore实现简单的伪静态功能是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。

相关文章推荐