如何实现自动Trackback

王志勇 发表于 2006年08月12日 12:32

自动Trackback最典型的例子是Donews Blog,如果你是Donews的Blog用户,如果你的文章中链接到了另一位Donews的Blog用户的文章,它就会自动给这位用户的文章发送Trackback,而不需要你手动发送。近日发现hopesome的Blog也支持自动Trackback,站内、站外的Blog都可以自动发送过来,与Donews Blog的原理完全一样。例如这个页面,就是我的Donews Blog自动发给hopesome的。当然,在我已经有2个以上的Blog的这种情况下,反而给我带来了不便。

实现自动Trackback有这么2种方法,双方都不受ASP、PHP、ASP.net编程语言的限制:

方法1、以Donews和hopesome的Blog为例:这些Blog必须同时写入自动发送Trackback、自动接收Trackback的程序,并且在同一个页面,自动发送、自动接收的程序缺一不可,否则都无法成功。工作原理如:例如有Donews的A用户,与有Donews的B用户,A用户链接了B用户的文章,请注意,是任何人点击了A用户的文章的.aspx页面,然后,会自动搜寻正文中是否含有外部超链接,如果有,它就会向外发送ping,合法的Trackback包括发送人名称、标题、文章网址、简述4个部分,这4个部分,是从A用户的数据库里调出来的,其中“简述”可以取该文章的前200个字。如果ping成功,将发送Trackback,并且写入一个数据,表示已经发送,以后不会再重复发送;B用户的文章页面的接收方式如:在B用户的文章页面,实际上暗含着自动接收Trackback的程序,它收到一个合法ping之后,就会做相应的处理,写入数据库。严格的做法是,如果留言处已经含有ping过来的地址,将不再做处理。反过来,如果B用户的文章链接到A用户的文章,则是B用户的文章发送ping,A用户的文章接收ping。

方法2、如果不需要使用ping功能的话,只需要将访问来源的地址进行记录即可,写入评论处。Blogger的站内导航页、搜索引擎、spam等等的地址,进行过滤,不写入评论处。严格的方法就是先写入审核后台,如果得当,审核到评论处。把访问来源应用到Trackback,可以接收到任何外站对该页的链接页面,不会错过任何一个用户对此文的引用,成功率100%,让web2.0的应用畅通无阻。

上述“严格的做法”,指的是在更大程度上减小错误。你可能会发现,方法1可能存在着一定的问题,就是假如A用户的文章链接到了intel的网页,那么每次访问A用户的这篇文章,都会向intel发送ping,浪费了双方很多的服务器资源。这里可以做限制,如果ping五次之后,将不再自动发送ping,也就是这样记录,当该文章点击率超过5次,将不再自动发送ping。

27条评论:
1   Multinate 2006-08-12 13:04
太深奥了,谢谢!
2   朱仔明 2006-08-12 14:48
勇,需不需要建一个最新的评论栏目呢,每一次看评论数有增加了,方法就是从头由尾看下去。勇,你是如何进行评论的呢?
3   王志勇 2006-08-12 16:48
最新评论功能不定期推出,我从后台看到的最新评论。
4   朱仔明 2006-08-12 22:06
哈哈,何为不定期,如何去衡量的呢?
5   朱仔明 2006-08-13 07:50
本Blog会不会像donews一样会自动发Trackback给自己的呢?!
6   王志勇 2006-08-13 08:12
不会。
7   王志勇 2006-08-13 10:13
想了一下,“最新评论”的功能是很重要的,应该尽快推出。如果Blog是要向整个互联网社区发展,必须有最新评论功能,在这个问题上是我疏忽大意了。一直注重Trackback却疏忽了这个重要的最新评论。
8   朱仔明 2006-08-13 10:36
期待中……,现在进入个人Blog时,第一时间还是习惯了,在输入栏上输入“auiou”,这一个好像已经成了自己的域名一样,当然,这一个事实是不存在的。:)然后,再点击自己的Blog。
9   王志勇 2006-08-15 23:08
最新评论已完成。
10   朱仔明 2006-08-16 00:03
来看了,但好像看不到什么新的评论,可能是习惯了前者吧,这一个好像是第500个留言。
11   朱仔明 2006-08-16 00:06
看到了,谢谢勇,现在看最新留言,再来不用从头再尾一直看下去,就可以方便容易看到留言了。节俭了好多时间了。。。:)
12   朱仔明 2006-08-16 00:11
再次测试,是否存在问题。。。:)
13   王志勇 2006-08-16 09:43
没错,你这是第500个留言。从头看到尾,精神可嘉。
14   朱仔明 2006-08-16 12:35
» 本周随机评论:建行网上
» 如何实现自动Track
» 让QQ发送韩语
» 为什么申请多个Blog
» 本周随机评论:人生领悟
» "Google女副总裁M"
» "新浪的Blog"
» Auciouce奉献:
--
勇,上面的为最新的评论,是不是有一点出错了呢,明明是没有评论都显示成有了评论,我想,随着评论的增加后,自然会覆盖最开始的评论.
15   王志勇 2006-08-16 13:23
是的,最后的几条,是昨晚在本地做的测试,它会被新的覆盖掉。
16   朱仔明 2006-08-20 12:04
现在的最新评论,为什么有时候并不是显示在最前面的呢?
如:
9根火柴的问题(最后评论时间:2006-08-17 18:38)
清理这几天频繁的整页弹(最后评论时间:2006-08-20 09:10)
网易博客(快速评测)(最后评论时间:2006-08-20 09:00)
17   王志勇 2006-08-20 12:07
刚才在修改这个评论的程序,可以进一步自动屏蔽垃圾评论的IP,垃圾评论在本站是没有藏身之地的。用一些帖子做测试,然后我删除了。排在前面的帖子,一定是最新评论过的。删除评论之后,它仍然会排在前面。
18   朱仔明 2006-08-20 12:11
哦,原来是一个回事,明白了。。。:)
19   朱仔明 2006-08-20 12:16
勇修改了,我也来增加一个字。
哦,原来是这一个回事,明白了。。。:)
20   baobao 2007-01-12 22:21
Trackback来自 《感受trackback》

觉得你的技术方面很强,自己能写blog已经很了不起了,我还要经常来学习

21   Toy 2007-01-31 10:35
利用js就可以写一个自动群发 引用~~~现在很多人都利用引用~~有点泛滥...这个功能很多人不会用 被别人恶意引用也不会删除~~~
22   mumu 2007-02-10 19:50
不错的帖子
23   Bill.sun 2007-08-21 12:20
说的很好啊
24   Suave 2007-11-26 15:06
为什么实在访问的时候ping,而不在发布的时候ping?
25   JASON 2008-05-28 10:52
trackback ping 的发送功能很容易实现.
但是作为接收trackback ping的功能如何实现?即接收别人发过来的ping,应该在哪里处理?如何处理?最好是C#
26   freetao 2009-03-02 17:29
不错的文章
27   springrivermoon 2009-03-21 17:17
是不是我太笨了,真的没看懂,为什么不能说的明白点。

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (44周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2022年07月
2022年06月(15)
2022年05月(20)
2022年04月(16)
2022年03月(9)
2022年02月(9)
2022年01月(10)
2021年 +

2020年 +
2019年 +
2018年 +
2016年-2017年(9)
2014年06月-09月(10)
2013年 +
2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2024 auiou.com All rights reserved.
此Blog程序由王志勇编写