我一直只知道这是一个回馈到引用源的功能,但一直都不知怎么使用,特别是在CSDN的BLOG里,似乎找不到这个引用通告的地址。
什么是Trackback呢?
http://www.donews.net/weaver2000/archive/2004/12/08/197144.aspx
简单说来,Trackback是网站与网站之间互相通告的一种方法。它能让甲对乙说:“这篇文章可能是你感兴趣的”,要实现这一动作,甲向乙发送一个Trackback Ping(引用通告)即可。在这种情况下,一个ping就是一条从一个web服务器发送到另一个服务器的短消息(a small message)。
Trackback Ping是由Moveable Type发明的规范,他们说Trackback是"a framework for peer-to-peer communication and notifications between web sites"。这里是他们的Trackback技术规范文档:http://www.movabletype.org/docs/mttrackback.html
举个例子来说明一下。比如我在鱼头的Blog中看了一篇我感兴趣的文章,对这篇文章我自己有一些看法,如果按照传统BBS的做法,我需要在鱼头这篇文章下发表自己的评论,但这样做的话我的文字只能存在于鱼头的网站上,我无法再维护自己的这篇评论。另一个情况是我在自己的Blog中也在写一篇相类似的文章,我希望鱼头也能来看一看我的这篇,传统BBS的习惯还是得到鱼头的文章下发一篇回复,把我的URL贴过去。
但有了Trackback Ping,我们的Blog不再需要这样做。
Blog跟BBS有点重要的不同,Blog是一种个人创作,用Blog来发表自己的东西,保存自己的东西,即使是对他人Blog文章的评论也要在自己的Blog中永久保留下来。通过Trackbak,我就可以在自己的Blog中发表文章,同时把自己这篇文章的URL地址Ping到鱼头的那篇文章上去。这样,所有阅读鱼头文章的人也能通过Trackback顺藤摸瓜地来我的Blog看我的文章。
所以,当我们的Blog有了Trackback Ping功能,那么谁都可以通过Trackback Ping来发表意见和评论了。这样,多家Blog网站就通过相关话题而联接起来。各种评论在Internet上相互连接而织成一张大网。因此,可以说,Trackback创造出了Blog与BBS、Diary完全不同的文化,Blog的世界通过Trackback而变成真正的无限互连。
作为Blogger,让我们习惯于这样讨论问题和做评论吧:把内容写在自己的Blog里面,Trackback Ping到别人的Blog。这个概念是论坛模式里从来没有的,称为Remote Commenting。
如何在Blog中实现Trackback?
在有Trackback功能的Blog系统中,每篇Blog文章都有两个URL,一个是要访问这篇文章所使用的URL,另一个就是Trackback Ping URL(引用通告地址),它是用来接受来自其他Blog网站Trackback Ping的程序。当我发表文章的时候,想要通知鱼头的话,只需要把鱼头那篇文章的Trackback Ping URL贴到我这边文章中来,我提交文章时,系统就会按照这个URL发送一个Ping给鱼头的那篇文章。而鱼头则将在自己的文章下看到类似这样的一个引用通告:
标题: Joyhero的文章
来自: Joyhero的Blog
摘要: Joyhero的文章内容摘要...
地址: http://joyhero的文章地址
这个Trackback Ping是通过标准的HTTP协议从我的Blog发送到鱼头的Blog的,我的Blog发送一个POST格式的HTTP请求到鱼头那篇文章的Trackback Ping URL。这个请求的content type是application/x-www-form-URLencoded,它大概是这个样子的:
POST http://鱼头文章的TrackbackPingURL
Content-Type: application/x-www-form-URLencoded
title=Joyhero的文章&url=http://Joyhero的文章地址&excerpt=Joyhero的文章摘要&blog_name=Joyhero的Blog
早期版本的Trackback规范中,Ping是GET方式的HTTP请求,现在不再支持GET方式,只能用POST方式。参数包括:
title - 文章的标题
excerpt - 文章的摘要。在Movable Type系统中,如果摘录信息超过255个字符将会被截断为252个字符,并在后面增加...三个字符
url - 文章的永久连接。象其它永久连接一样,这个连接应可能准确地在页面中定位文章的入口,因有疑问时这个链接会用到
blog_name - 发表文章的blog的名称
在上述的参数中只有url是必须的。如果title没有提供,url的值将被用作标题。
当我的Blog发出这个Trackback Ping后,将接收一个简单的XML格式应答,如果Ping成功,那么应答的格式如下:
<?xml version="1.0" encoding="iso-8859-1"?><response><error>0</error></response>而失败应答的格式为:
<?xml version="1.0" encoding="iso-8859-1"?><response><error>1</error><message>The error message</message></response>另一个出自CSDN上的
TrackBack最早是Movable Type上的一个小功能。可以说就是这个小功能在blog界却掀起了一场革命。
TrackBack为将全世界无数个blog连接起来的功能。例如,当你读了某个网站的文章,想对此写下自己的感想。这个时候利用网站准备的讨论功能进行投稿是很最常见的做法。但这样只是把自己的评论意见写下来向别人的网站投稿,而你自己手里却什么也没留下。
TrackBack则与之有很大的区别。可以把评论写到自己网站上。然后向刊载原始文章的服务器发送该网页的URL及标题、部分正文、网站名称等信息(注)。尽管这一过程只是称之为“发送TrackBack Ping”,但通过这种办法,在原始文章的地方就留下了你的评论的URL、标题等部分信息。当然别人也可以向原始文章发送TrackBack Ping,所以在原始文章中就将包括你的TrackBack Ping在内的所有评论都记录了下来。
此外,如果你在自己网站上也设置了TrackBack Ping功能的话,那么谁都可以通过TrackBack Ping来发表针对你的意见了。这样,多家网站就通过相关话题而联接起来。各种评论在因特网上就像网眼一样联接起来。这样就创造出了与日记网站完全不同的文化。
注:发送地址采用原始文章指定的URL,这一URL就称为“TrackBack Ping URL”。最后的“128”为原始文章的专用数字,称为“TrackBack ID”。另外,TrackBack的技术标准刊登在“LowLife.jp”的blog网站上。