什么是URL?为什么要做URL静态化?

电子说

1.2w人已加入

描述

进行URL静态化的目的是对于搜索引擎和用户来说更为友好,虽然Google之前在官方博客发表了博文Google能够很好的抓取动态网页,并且也非常鼓励网站采取动态网页的形式来建站,但是我们所要做的网站不仅仅只是面对Google,我们还需要让其他搜索引擎能够很好的抓取,同时能够让用户感觉比较好,所以还是建议采取静态网页的形式进行建站,而事实上,静态的网页相对容易取得好的排名。

想了解这个问题,那么我们先要来了解几个基本概念;

一、URL是什么?

URL是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。即URL是网民们在 Internet 知识海洋中寻找资源、获取信息、用 E- mail 通讯、网上交流等所必不可少的。它最初是由蒂姆·伯纳斯·李发明用来作为万维网的地址。现在它已经被万维网联盟编制为互联网标准RFC1738了。

其中表示URL采用的方案,方案之后是一个冒号(:),之后的方案描述部分()则依赖之前所采用的方案。方案名可以由一系列字符组成,字符可以是小写字母“a”-“z”、数字以及字符加号(“+”)、句点(“.”)和连字符(“-*)为了便于使用,程序在解释URL时视大小写字符是等价的(如http等价于HTTP)。

具体来说,常用的URL格式如下:

协议类型://服务器地址[:端口号]/路径/文件名[参数=值]

上述结构中[]部分是可选的。如果端口号与相关协议默认值不同,则需包含端口号。其中协议类型包括HTTP,MAILTO,FILE,FTP等。利用HTTP协议访问万维网上的一个资源的URL形如:

http://website.com/goods/search.phpterm-apple

其中website.com是服务器,search.php是服务器端的一个脚本文件,之后紧跟脚本执行所需要的参数term,而apple为用户输入的对应term的参数值。

除上述的绝对形式外,还可以相对某一特殊主机或主机上的一个特殊路径指定URL,如:

/goods/search.phpterm-apple

/search.phpterm-apple

Web页面常常用上述相对形式描述Web站点或者应用程序中的导航。

二、URL的类型有哪几种?

常见的url表现形式有静态、动态、伪静态三种。

1、静态页面

优点:相比其他两种页面,速度最快。不仅加载速度最快,而且不需要从数据库里面提取数据,速度快的同时,也不会对服务器产生压力。

缺点:由于数据都是储存在HTML里面,所以导致文件非常大。并且最严重的问题是,更改源代码必须全部更改,而就算只改一个地方,全站静态页面就自动更改了。如果是大型网站有比较多的数据,那会占用大量的服务器空间,每次添加内容都会产生新的页面。

2、动态页面

优点:空间使用量非常小,一般几万条数据的网站,使用动态页面,可能只有几兆的文件大小,而使用静态页面少则十几兆,多则几十兆。因为数据是从数据库里面调用而来,如果要更改某些数值,直接更改数据库,那么所有的动态页面,就会自动更新了。这一点相比静态页面好处就大很多了。

缺点:用户访问速度较慢,为什么会访问动态页面较慢呢。这个问题我们就必须从动态页面的访问机制说起了,其实我们的服务器上面有一个解释引擎,当用户访问的时候,这个解释引擎就会把动态页面翻译为静态页面,这样大家就能够在浏览器里面查看源码了。而这个源码就是解释引擎翻译以后的源码。除访问速度较慢以外,动态页面的数据是从数据库里面调用过来的,如果访问人数非常多,数据库的压力就会非常大的,不过现在动态程序都是使用了缓存技术。但是总体来讲,动态页面对于服务器的压力比较大一点。同时动态页面的网站一般对服务器高求要比较高一些,同时访问的人越多对服务器造成的压力越大。

3、伪静态

优点:大家都知道静态页面对seo有很大益处,而且对服务器的负载很小,但静态页面的缺点是不能随时更新。对于伪静态的优点,这个并不好讲,伪静态网页相比动态网页而言,并没有速度上面的提升,相比较而言,因为是“假”静态页面,其实还是一个动态页面,也是同样需要翻译为静态页面的。最大的好处就是让搜索引擎把自己的网页当做静态页面来处理。

缺点:从名称上面就能够看出来缺点,“伪静态”其实就是“假静态”,搜索引擎会不会把他当做是静态页面来处理,这只是我们靠经验靠逻辑去分析的,并不一定准确。或许搜索引擎直接把他认为是动态页面,我们做那么多努力,其实什么也没有换来。

三、为什么要URL静态化?

搞明白了URL的主要类型和优缺点,那么我们就能很容易的理解为什么现在大多数做seo需要将URL处理成伪静态?

以前搜索引擎蜘蛛因为技术的问题不喜欢爬行动态的URL,太多的参数代码会让搜索引擎蜘蛛陷入无限制的循环之中,重复的页面还会继续收录爬行,所以在几年前搜索引擎不是很喜欢动态的网站链接。因为是这样的链接容易陷入死循环或者就是抓取大量的链接而链接里的内容都一样,最典型的就是万年历,如果一个网站按照时间存档而又没有做静态化或者伪静态化处理,那么搜索引擎抓取时就会一直顺着这个万年历点击下去,形成死循环。其实我们看时直观的就知道这个是万年历,但是搜索引擎则不会,它面对的只是一段代码,有时候不一定能判断出是万年历;

URL伪静态解决了静态网页难以维护、动态网页不友好的问题,将两者的优势结合到一起,一方面对于搜索引擎和用户来说比较友好,另一方面维护起来也比较方便,现在的程序往往都能够通过伪静态规则来实现程序的伪静态,但是同样也存在缺点,就是占用CPU资源相对较大。

进行URL静态化的目的是对于搜索引擎和用户来说更为友好,虽然Google之前在官方博客发表了博文Google能够很好的抓取动态网页,并且也非常鼓励网站采取动态网页的形式来建站,但是我们所要做的网站不仅仅只是面对Google,我们还需要让其他搜索引擎能够很好的抓取,同时能够让用户感觉比较好,所以还是建议采取静态网页的形式进行建站,而事实上,静态的网页相对容易取得好的排名。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分