关于网页*静态化*及SEO问题的一些看法

我们还是先来讨论一下,什么叫做“静态页”。

我们还是先来讨论一下,什么叫做“静态页”。有朋友说,放在硬盘上的htm或html文件便是一种静态页,Web服务器不需要做额外的处理,直接读取文件内容并输出就可以了,而这样的静态文件对于SEO是有帮助的。至于理由,是搜索引擎会对html结尾的文件给更好的权值(这好像还是结论,不是理由),而这是“常识”,“了解一点SEO的人都知道这个”,“人们普遍在使用的做法”,因此“它一定是正确的”。不过其实Google并不这么认为,百度倒没有给出专业说法。

当然,我们已经重复强调,但还是需要不断明确的一点是,即使搜索引擎对于“静态页”有更好的倾向性,那也是因为其“URL样式”,而不是“在硬盘上放置了一个html文件”。请求方(也就是爬虫)只是向服务器端发送一个URL,并获取服务器端给出的内容。它不会关心,也无法了解服务器端究竟是如何得到页面内容的,对于客户端来说,世界上没有“静态”或“动态”页面之分。有些朋友可能还是会说“不会啊,html就是静态页面,像aspx之类的就是动态页面,前者不需要在Web服务器上运算,后者需要”。

真是这样的吗?并非如此,因为html文件也是需要Web服务器来运算的。例如,您请求一个html文件,Web服务器至少做了几件事情:

如果请求包含缓存信息,那么处理缓存状态。

根据URL定位到磁盘上的文件。

进行用户认证和授权(如,是否匿名?)。

判断是否有权限读取。

读取文件。

根据文件类型设置MIME的值。

根据文件最后修改日期设置Last-Modified值。

根据文件内容及其他状态设置其E-Tag值。

如果文件内部有include标记,那么读取另一个文件填充进来。

看看,处理一个文件需要多少“动态运算”啊,这些可都是在Web服务器(如IIS)加载一个html所做的事情。如果您想要观察这些过程,可以阅读一些Web服务器的源代码,或者去观察一下ASP.NET中System.Web.StaticFileHandler类所做的事情,它也体现了Web服务器处理html时的关键之处。事实上,如果您在IIS中将html配置给ASP.NET ISAPI的话,或者使用VS自带的Web服务器,最后便是由StaticFileHandler来输出硬盘上的文件的。

所以,虽然我们看起来Web服务器只是简单地读取了硬盘上的文件,但其实它还是不如我们想象的那么简单。不过对于客户端来说,这一切都是不可知的。例如Squid,Nginx这样部署在前端的缓存或反向代理服务器,它们都不会关心后端Web服务器是Windows,Linux还是Unix,也不会关心是IIS,Apache,Lightted甚至是我们自己写的高效或低劣的Web服务器。对于浏览器,爬虫,或前端负载均衡器来说,它们只知道TCP/IP协议,它们只知道HTTP协议等东西,其他一概不知。

不过,也有朋友坚持认为“生成静态页”来“进行页面缓存”对SEO有帮助。理由是,“进行页面缓存”能够提高网站性能,爬虫更倾向于访问速度更快的页面。从这个角度看来,这种说法的确有一定道理。只是我还是不喜欢这样的看法,因为这种说法没有把握事物关键。在这里,SEO的关键在于优化网站性能,而生成静态页只是一种手段之一。这并不是适用性最广的,也并非是最容易实现的。如果您直接把“生成静态页”与“SEO”联系起来,很有可能会对他人造成误解。

当然,如果您的思路没有问题,“静态页”三个字的指代也足够明确,“静态页有利于SEO”这个命题毫无疑问是正确的。不过我们现在并没有讨论一个命题的逻辑是否正确,我们也不必纠缠于一个表达形式是否严谨,我们的目的是要说明道理。也正因为如此,老赵才会一遍一遍地写这么多内容。也就是说,这几篇文章的关键在于“说清道理”,我们把握它既可。

最后,老赵再谈一下对SEO这个工作的看法。

从老赵与各SEO人员的接触感觉来看,他们总是有各种理由来说明“问题所在”,只是如果在改进问题之后还是没有效果的话,他们又可以找出各种理由来告诉你为什么没有效果——但是要知道SEO是一个实践性工作,它的唯一判断依据便是“效果”,而不是“理论”。SEO的理论很容易掌握,但是如果无法真切提高一个网站在搜索引擎上的表现,这一切还是白搭。老赵认为,一个好的SEO是需要了解网页制作,或者说网站开发的基本技术的,至少要有常识,否则基本上就是在扯蛋。老赵曾经接触过一个“专业”的SEO公司,那里的“SEO咨询师”给我留下了深刻的印象——负面印象。其“非专业性”从以下几个事件中便可见一斑:

还是“静态页”的问题。由于把URL变为.html结尾之后并没有得到明显的效果,他询问我们的实现方式。在得知我们使用了URL重写,而不是在硬盘上放置html文件时他“惊呼”这种欺骗搜索引擎的行为是会起到反效果的。他强烈要求我们在硬盘上放置html文件。这个要求自然遭到了我们的拒绝,原因之一是我们是非常动态的网站,很难实现这个需求,但是更重要的是,懂得一点技术的人就知道,Web服务器的处理方式对于搜索引擎爬虫时完全不可见的,我们是否真正放置html文件与搜索引擎没有任何关系。

内容的位置问题。在SEO界有种说法是,搜索引擎会更倾向于把页面靠前的内容看的更重,而把页面靠后的内容权值放低。因此那位专业SEO咨询师指着我们的某张页面说,这部分内容太靠“下方”,很容易被搜索引擎忽略。请注意,他说的是“内容在页面显示的时候出现在下方”。您觉得这种说法有道理吗?如今页面布局往往使用XHTML+CSS的方式,而搜索引擎只会关注HTML的内容,而“位置”很大程度上是由CSS,甚至是由JS来控制的。出现在HTML内容前段的内容,在页面呈现时也可以出现在下方,这也和搜索引擎没有任何关系。可惜这一点也解释了半天。

时间: 2024-08-03 12:53:25

关于网页*静态化*及SEO问题的一些看法的相关文章

谈*静态页*(或网页*静态化*)

"静态页",在Web应用程序开发中是很常见的概念.只是我发现目前还是有相当部分的朋友,在这方面的存在一定的误区.因此现在独立写一篇文章,也想把一些问题讲讲清楚,以后在讨论的时候也好有个准. 不久前有朋友写了一篇题为<提供生成静态页核心代码>的文章,介绍了一种"向硬盘写入页面文件"的方式.这篇文章的内容在此并不多作讨论,这里引用一下作者给出的摘要: 网页生成静态Html文件有许多好处,比如生成html网页有利于被搜索引擎收录,不仅被收录的快还收录的全.前台

艾伟_转载:谈*静态页*(或网页*静态化*)

"静态页",在Web应用程序开发中是很常见的概念.只是我发现目前还是有相当部分的朋友,在这方面的存在一定的误区.因此现在独立写一篇文章,也想把一些问题讲讲清楚,以后在讨论的时候也好有个准. 不久前有朋友写了一篇题为<提供生成静态页核心代码>的文章,介绍了一种"向硬盘写入页面文件"的方式.这篇文章的内容在此并不多作讨论,这里引用一下作者给出的摘要: 网页生成静态Html文件有许多好处,比如生成html网页有利于被搜索引擎收录,不仅被收录的快还收录的全.前台

用PHP实现WEB动态网页静态化

web|动态|静态|网页 在最近几年,万维网(也称环球信息网,即WWW)不断改变信息处理技术的面貌.WEB已经快速地成为一种有效的媒介,并适合人们和商业沟通和协作.几乎所有的信息技术领域都普遍受到WEB的影响.Web访问带来更多用户和更多数据,这意味着给服务器和数据库更多压力和最终用户得到越来越慢的响应速度.与不断靠增加CPU,磁盘驱动器及内存来跟上这种增长的需求相比, WEB动态网页面静态化应该是一个更实用,更经济的选择. 用PHP实现WEB动态网页静态化的具体实现函数如function ge

【静态化平台】☞( 一)网页静态化服务

一.应用场景 当我们需要对网页做以下操作时,可以使用本平台O(∩_∩)O~ 1.抓取网页源代码,包括网页js动态渲染之后的内容,100%还原网页的所见即所得 在抓取的网页源代码的时候,遇到ajax异步渲染到dom节点,这样读取网页源码就会缺失这些异步渲染的数据.传统做法单独请求ajax的http请求获取json数据,但是如果这些json数据在页面上通过js做了改变,最终呈现到页面的数据不是你想要的,还是不能解决我们的问题. 2.抓取下拉后加载的数据 在移动端浏览网页或app时候,经常会遇到下拉加

请教关于网页静态化后访问的链接地址问题

问题描述 最近在研究网页静态化,遇到一个问题,网页静态化后保存的网页是以当前的时间为名称的比如:2010081010.htm,前台通过点击相应的标题,访问其具体的内容,现在不知道如何处理其标题的访问链接问题,怎么才能让这个链接自动指向2010081010.htm,谢谢各位

网页静态化-如何实现网站静态化,部分能实时显示

问题描述 如何实现网站静态化,部分能实时显示 我想做一个自己的论坛网站.我的想法是把这个网站的动态页面都静态化显示.但是有一个问题是,比如说 由于我网站的页面都是静态化的,我论坛的某个用户发了个帖子,怎么让这个帖子能实时显示出来. 解决方案 Ajax技术,可以实现对页面中局部区域的动态刷新,使得用户能够以更好的方式获得最新的数据信息.只更新需要查看的信息,页面中其他信息保持不变 解决方案二: 传统WEB应用需要定时AJAX获取.页面和后端不会保持长连接.

网站-网首页静态化-提高访问效率

问题描述 网首页静态化-提高访问效率 请教大家有经验的,比如一个视频网站首页,轮播图和视频可能回1小时更新,视频播放数,点赞数要求实时更新, 这样的首页是不是不适合做静态化啊,如果可以如何做,如何访问效率,不知道大家有什么建议,比如美拍的官网,是静态化的吗,看起来访问速度很快 ,请有经验的前辈谈一谈,如何合计. 解决方案 静态化的本质就是缓存,而且是把磁盘当作缓存,这是一种低级原始低效的做法. 事实上现在有无数的缓存框架,缓存框架都是将内存作为缓存,而且有很好的处理脏数据的策略.所以完全不要再用

分享常见的几种页面静态化的方法_php基础

什么是PHP静态化 PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静态页面的处理机制不同. 为什么要让网页静态化 一.加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明显提高: 二.有利于搜索引擎优化SEO,Baidu.Google都会优先收录静态页面,不仅被收录的快还收录的全: 三.减轻服务器负担,浏览网页无需调用系统数据库: 四.网站更安全,HTML页面不会受php相关漏洞的影响: 观看一

使用ob系列函数实现PHP网站页面静态化_php实例

将PHP的执行页面预先转换成HTML,是所谓的PHP静态化方法之一. 其他还有模板替换法,opcache等方法. 静态化的作用: 提高网站的响应速度,降低服务器的负载: 用于搜索引擎的SEO: 利用PHP输出buffer直接写成html,定时后台定时扫一遍网站,是比较容易实现的网页静态化. 静态化之前: <?php for($i=0;$i<1000;$i++){ echo "bull<br>"; } ?> 静态化: <?php ob_start();