伪静态说明,如何使用伪静态--以京东为例(包含倒排索引的解析)

今天我就用问答的方式向你们介绍一下什么是伪静态,伪静态的做用又是如何?

问题:1.京东的页面为何采用.html
答案:
采用html静态的方式缘由2
1.静态页面浏览器加载的速度更快.
2.以.html结尾的页面,更加的容易被搜索引擎收录. 能够提升网站的曝光率.html

问题2:为何搜索引擎只收录静态页面,而不是动态页面?
搜索引擎的工做原理: 倒排索引
倒排索引:根据关键字检索文章的位置. 能够快速的获取查询的结果java

假设:收录了动态页面 数据是变化的!!!
若是搜索引擎收录动态页面,则没法保证搜索准确性.web

若是须要经过.html的方式访问页面.则在webapp的目录中必须有一个与之对应的静态文件才能予以展示.浏览器

问题3:京东的网址为
https://item.jd.com/100009177374.html. 那么京东家是否须要准备 100009177374个静态页面????
分析:京东必定采用了动态的页面的脚本技术实现该功能.app

问题4:如何解决动态页面与静态面的平衡呢?webapp

伪静态说明:
伪静态是相对真实静态来说的,一般咱们为了加强搜索引擎的友好面,都将文章内容生成静态页面,
可是有的朋友为了实时的显示一些信息。或者还想运用动态脚本解决一些问题。不能用静态的方式来展现网站内容。可是这就损失了对搜索引擎的友好面。怎么样在二者之间找个中间方法呢,这就产生了伪静态技术。伪静态技术是指展现出来的是以html一类的静态页面形式,但实际上是用ASP一类的动态脚原本处理的。ide

总结:以.html形式展示出来的动态页面.网站

问题5:如何实现??
实现思路: 拦截以.html结尾的请求便可.搜索引擎

倒排索引

在这里插入图片描述

建立controller类

@Controller
public class IndexController {
 
    @RequestMapping("/index")
    public String index() {
        
        return "index";
    }

添加实现伪静态的配置

//该配置类,实质就是web.xml配置文件
@Configuration
public class MvcConfigurer implements WebMvcConfigurer{
    
    //开启匹配后缀型配置
    @Override
    public void configurePathMatch(PathMatchConfigurer configurer) {
        //5.2.4之后不建议使用,可是加上依然有效果.
        configurer.setUseSuffixPatternMatch(true);
    }
}

页面效果

能够拦截.html结尾的请求3d

在这里插入图片描述

相关文章
相关标签/搜索