引用
TrackBack 初看起來很難理解, 不過理解之后就不會(huì)有問題了.
基本上它的構(gòu)想如下:
1. 某個(gè) Blog A 上有你感興趣主題, 你想在自己的 Blog B 上發(fā)一個(gè)相關(guān)的主題, 并且希望發(fā)表的內(nèi)容和回復(fù)自動(dòng)發(fā)到 Blog A 上.
2. 這時(shí)你就可以復(fù)制 A 上面相關(guān)的 TrackBack 鏈接, 輸入到你的 Blog B 中的那個(gè)主題的 TrackBack URL 框中.
3. 之后你的主題和后面所有回復(fù)的摘要都會(huì)自動(dòng)發(fā)往 Blog A 的那個(gè)主題中.
說白了, 就是一個(gè)跨站點(diǎn)的留言系統(tǒng). (希望算是比較正確的描述 )
TrackBack 的實(shí)現(xiàn)有兩個(gè)重點(diǎn):
1. 作為 Blog 服務(wù)端時(shí)(也就是 Blog A), 需要能接收到各個(gè)使用了 TrackBack 連接的 Blog 發(fā)送到自己這里的信息并發(fā)回反饋.
需要解析發(fā)來的數(shù)據(jù), 不過這個(gè)很容易實(shí)現(xiàn).
2. 作為客戶端時(shí)(Blog B), 需要在有新的回復(fù)時(shí)通過指定的鏈接發(fā)出內(nèi)容摘要給服務(wù)端.
目前官方文檔定義了兩種方式:
1) 通過 QueryString (正在逐步廢除)
2) 通過 Post Form 格式 (通過 HTTP Header 模擬的 Form Post)
PHP 可以通過 fopen 實(shí)現(xiàn). ASP 可以通過 ServerXMLHTTP 實(shí)現(xiàn)(老的 XMLHTTP 性能和功能不理想). PERL 的請參考 MovableType.
其它的就是 TrackBack List RSS 和 AutoDiscovery. 前者我實(shí)現(xiàn)了, 后者沒有打算, 雖然還算簡單.
Trackback List 沒多大用處, 只是用 XML 列出所有發(fā)到此 URL 的所有 Trackback 罷了.
AutoDiscovery 其實(shí)就是在頁面里面隱藏一段代碼, 給 Trackback 客戶端自動(dòng)尋找到 Trackback URL 而已(有人說 AutoDiscovery 會(huì)毀了 TrackBack 的實(shí)用性, 我深以為然, 因?yàn)檫@會(huì)給 spam robot 可乘之機(jī)).
但是目前 Trackback 還存在編碼不同的問題, 因?yàn)橐?guī)范里面沒有規(guī)定. 例如我的 Blog 是 GB2312 而別人的是 UTF-8, 那么發(fā)過去就是亂碼. 要把 Blog 轉(zhuǎn)成 UTF-8 就需要 Windows 2000 Server 及更高版本的服務(wù)器了. 為此猶豫中.