[学习] nofollow
[来源:百度百科 http://baike.baidu.com/view/1584081.htm]
简介
nofollow[1]是一个HTML标签的属性值。它的出现为网站管理员提供了一种方式,即告诉搜索引擎"不要追踪此网页上的链接"或"不要追踪此特定链接"。这个标签的意义是告诉搜索引擎这个链接不是经过作者信任的,所以这个链接不是一个信任票。
nofollow标签是由谷歌领头创新的一个“反垃圾链接”的标签,并被百度、yahoo等各大搜索引擎广泛支持,引用nofollow标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有nofollow属性的任何出站链接,以减少垃圾链接的分散网站权重!
简单的说就是,如果A网页上有一个链接指向B网页,但A网页给这个链接加上了 rel="nofollow" 标注,则搜索引擎不把A网页计算入B网页的反向链接。搜索引擎看到这个标签就可能减少或完全取消链接的投票权重。[1]
发展
最初,"Nofollow"属性出现在网页级元标记中,用于指示搜索引擎不要追踪(即抓取)网页上的任何出站链接。例如:<meta name="robots" content="nofollow" />。
而后,在将"Nofollow"用于各个链接前,我们需要完成大量的工作(例如,将链接重定向至robots.txt中拦截的网址),以阻止蜘蛛追踪某网页上的各个链接。因此,我们创建了rel属性的"Nofollow"属性值。这可让网站管理员更精确地进行控制:无需指示搜索引擎和漫游器不要追踪该网页的所有链接,只需轻松地指示蜘蛛不要抓取某特定链接即可。例如:<a href="signin.php" rel="nofollow">signin</a>。
原因作用
我们都知道,反向链接即外链是搜索引擎给网站排名的一个重要因素。为了添加反向链接,SEO作弊者会在论坛和博客等大量发布带无关链接的内容。这些垃圾链接的存在给搜索引擎对网页质量的评估造成一定程度的麻烦,可以说nofollow是一个非常好的“垃圾链接防火墙”。正是百度、谷歌、Yahoo、MSN 为了应对垃圾链接(Spam)引入的一个属性,此属性应该被广泛采用。
Nofollow标签的作用有两方面,简单的说,一是不给链接投票,降低此链接的权重,二是使添加nofollow的部分内容不参与网站排名,便于集中网站权重。
使用方法
nofollow标签通常有两种使用方法:
1、将"nofollow"写在网页上的meta标签上,用来告诉搜索引擎不要抓取网页上的所有外部和包括内部链接。
<meta name="robots” content="nofollow” />
2、将"nofollow"放在超链接中,告诉搜索引擎不要抓取特定的链接。
<a rel="external nofollow" href="url"><span>内容</span></a>
3、nofollow标签是超链接<a>的一个属性值,我们只需要在源代码里面加上rel=”nofollow” 或者更为正规的rel=”external nofollow”即可 即:<a href=”#” target=”_blank” rel=”nofollow”>###</a> 。
nofollow还有另外的一些写法:
Meta robots标签必须放在和之间,格式:
content中的值决定允许抓取的类型,必须同时包含两个值:
是否允许索引(index)和是否跟踪链接(follow,也可以理解为是否允许沿着网页中的超级链接继续抓取)。
共有4个参数可选,组成4个组合:
1. index,follow:允许抓取本页,允许跟踪链接。
2. index,nofollow:允许抓取本页,但禁止跟踪链接。
3. noindex,follow:禁止抓取本页,但允许跟踪链接。
4. noindex,nofollow:禁止抓取本页,同时禁止跟踪本页中的链接。[1]
[学习] nofollow的更多相关文章
- iOS开发之第三方库的学习--hpple的使用
前言:因为在开发中很可能会遇到html解析,如果后台提供的数据只有html数据,或者开发的app需要从web前端的html里获取数据,就需要html解析工具了. 关于HTML解析库,可以阅读:收集几个 ...
- META元素使用的简单学习
meta标签是我们学习html时容易忽略的标签,其实它的作用很大,下面就一些网上关于meta标签的讲解内容做一个简单的归纳. META标签共有两个属性,它们分别是Http-equiv属性和Name属性 ...
- angularjs学习总结 详细教程(转载)
1 前言 前端技术的发展是如此之快,各种优秀技术.优秀框架的出现简直让人目不暇接,紧跟时代潮流,学习掌握新知识自然是不敢怠慢. AngularJS是google在维护,其在国外已经十分火热,可是国内的 ...
- 学习Coding-iOS开源项目日志(四)
Hello,大家好,好久没写博客了,今天再次来研究研究Coding源码,久违了. 前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目.本篇开始会陆续更新本人对git ...
- guava 学习笔记 使用瓜娃(guava)的选择和预判断使代码变得简洁
guava 学习笔记 使用瓜娃(guava)的选择和预判断使代码变得简洁 1,本文翻译自 http://eclipsesource.com/blogs/2012/06/06/cleaner-code- ...
- guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用
guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用 1,大纲 让我们来熟悉瓜娃,并体验下它的一些API,分成如下几个部分: Introduction Guava Collection ...
- [转载]angularjs学习总结 详细教程
http://blog.csdn.net/yy374864125/article/details/41349417#t75 目录(?)[-] 前言 AngularJS概述 AngularJS是什么 A ...
- 移动端web学习总结
前言: 一直想做一个移动端的阶段性学习总结,但是工作太忙总是加班.现在总算可以抽出一点时间来写一写,把知道的都写下来,这样就算忘掉了,也能很快想起来,不要太机智啊,哈哈哈! 一.移动端页面常识 1.常 ...
- jQuery学习教程(2)
由于一件事情打断了我的生活节奏,每天都学习都在托托拉拉,导致很多进度都没有达到自己预期的效果 在上一个章节我学到了环境的搭建,以及对jquery的熟悉.现在开始对其具体进行熟悉了. 一.如何使用选择器 ...
随机推荐
- 【算法笔记】A1047 Student List for Course
https://pintia.cn/problem-sets/994805342720868352/problems/994805433955368960 题意 给出每个学生的选课情况,输出每节课选课 ...
- 【性能测试】脚本开发,最普通的http协议脚本2
Action() { lr_start_transaction("FM0075基金购买"); web_submit_data("ehouse_ehGetPwdRandom ...
- Mac下运行git报错"xcrun: error: invalid active developer path .."
错误:xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun ...
- java容器类1:Collection,List,ArrayList,LinkedList深入解读
1. Iterable 与 Iterator Iterable 是个接口,实现此接口使集合对象可以通过迭代器遍历自身元素. public interface Iterable<T> 修饰符 ...
- 033-JsonUtils 工具类模板
模板一:使用的是jackson package cn.e3mall.common.utils; import java.util.List; import com.fasterxml.jackson. ...
- JavaScript数据结构-18.图结构广度优先和最短路径
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- ../../build/debug/codegen/libCodeGen.a(llvm-codegen.cc.o ):( data.rel.ro_ZTIN4llvm18ValueMapCallbackVHIPKNS_5ValueENS_6WeakVHENS_14ValueMapConfigIS3_EEEE[_ZTIN4llvm18ValueMapCallbackVHIPKNS_5ValueENS_
解决方式如下: wget http://llvm.org/releases/3.3/llvm-3.3.src.tar.gz tar xvzf llvm-3.2.src.tar.gz cd ...
- NSSM - the Non-Sucking Service Manager
nssm is a service helper which doesn't suck. srvany and other service helper programs suck because t ...
- Package.json中dependencies依赖包中^符号和~符号前缀的区别
刚git了webpack的包发现package.json里面dependencies依赖包的版本号前面的符号有两种,一种是~,一种是^,如下图标记: 然后搜了下在stackoverflow上找到一个比 ...
- Vue学习笔记:编译过程
碰到是否有template选项时,会询问是否要对template进行编译: 在template编译(渲染成UI)有一个过程.模板通过编译生成AST,再由AST生成Vue的渲染函数,渲染函数结合数据生成 ...