三大核心功能:
- RSS
- Permalink
- Trackback Pin
RSS
??????? 首先談RSS,RSS其實很多朋友都已有了解。RSS是站點用來和其他站點之間共享內(nèi)容的一種簡易方式(也叫聚合內(nèi)容),通常被用于新聞和其他按順序排列的網(wǎng)站,一段項目的介紹也可以是包含新聞的全部介紹等?;蛘邇H僅是額外的內(nèi)容或者簡短的介紹。這些項目 的鏈接通常都能鏈接到全部的內(nèi)容。網(wǎng)絡(luò)用戶可以借助RSS Reader在不打開網(wǎng)站內(nèi)容頁面的情況下閱讀支持RSS輸出的網(wǎng)站內(nèi)容。網(wǎng)站提供RSS輸出,有利于讓用戶發(fā)現(xiàn)網(wǎng)站內(nèi)容的更新。
??????? 現(xiàn)在很多站點都有RSS Feed,那么為什么是Blog的核心呢?RSS 本質(zhì)上中是一種遵循W3C RDF規(guī)范的XML格式,Blog和RSS結(jié)合十分緊密,自Blog一誕生以來,標(biāo)準(zhǔn)的Blog站點都支持RSS技術(shù)規(guī)范,能夠包含網(wǎng)站的Logo、Link、標(biāo)題、內(nèi)容等等。
Permalink
??????? 中文翻譯一般叫做固定鏈接,其實我覺得翻譯成靜態(tài)鏈接更為貼切。下面切入正題:
??????? 不得不承認,將動態(tài)網(wǎng)頁鏈接rewriting成靜態(tài)鏈接是最保險和穩(wěn)定的面向搜索引擎優(yōu)化方式。
??????? 此外隨著互聯(lián)網(wǎng)上的內(nèi)容以驚人速度的增長也越來越突出了搜索引擎的重要性,如果網(wǎng)站想更好地被搜索引擎收錄,網(wǎng)站設(shè)計除了面向用戶友好(User Friendly)外,搜索引擎友好(Search Engine Friendly)的設(shè)計也是非常重要的。進入搜索引擎的頁面內(nèi)容越多,則被用戶用不同的關(guān)鍵詞找到的幾率越大。在Google的算法調(diào)查一文中提到一個站點被Google索引頁面的數(shù)量其實對PageRank也是有一定影響的。由于Google 突出的是整個網(wǎng)絡(luò)中相對靜態(tài)的部分(動態(tài)網(wǎng)頁索引量比較?。?鏈接地址相對固定的靜態(tài)網(wǎng)頁比較適合被Google索引(怪不得很多大網(wǎng)站的郵件列表歸檔和BLOG按日期歸檔的文檔很容被搜的到),因此很多關(guān)于面向搜索引擎 URL設(shè)計優(yōu)化(URI Pretty)的文章中提到了很多利用一定機制將動態(tài)網(wǎng)頁參數(shù)變成像靜態(tài)網(wǎng)頁的形式:
實現(xiàn)方式主要有2種:
- 基于url rewrite的IIS的ISAPI REWRITE(免費下載)
- 基于path_info
??????? 具體實現(xiàn)細節(jié)不是本文重點,不再細述。很多BLOG程序后臺都能打開此功能,也要注意WEB服務(wù)器的設(shè)置,使用虛擬主機無法設(shè)置服務(wù)器的朋友請參考path_info的一些資料。
靜態(tài)地址還有什么好處:
- 隱藏后臺實現(xiàn):這在后臺應(yīng)用平臺的遷移時非常有用:當(dāng)從asp遷移到j(luò)ava平臺時,對于前臺用戶來說,根本感受不到后臺應(yīng)用的變化;
- 簡化數(shù)據(jù)校驗:比如我們需要將應(yīng)用從news.asp?id=234遷移成news.php?query=234時,前臺的表現(xiàn)可以一直保持為 news/234.html。從實現(xiàn)應(yīng)用和前臺表現(xiàn)的分離:保持了URL的穩(wěn)定性,而使用WEB服務(wù)中的mod_rewrite甚至可以把請求轉(zhuǎn)發(fā)到其他后臺服務(wù)器上。
??????? 從技術(shù)層面來講,論壇如果想被搜索引擎更多的關(guān)注的話,同樣可以實現(xiàn)Permalink。
Trackback
??????? TrackBack最早是Movable上的一個小功能。可以說就是這個小功能在blog界卻掀起了一場革命。
??????? TrackBack為將全世界無數(shù)個blog連接起來的功能。例如,當(dāng)你讀了某個網(wǎng)站的文章,想對此寫下自己的感想。這個時候利用網(wǎng)站準(zhǔn)備的討論功能進行留言是很最常見的做法。但這樣只是把自己的評論意見寫下來向別人的網(wǎng)站投稿,而你自己手里卻什么也沒留 下。
??????? TrackBack 則與之有很大的區(qū)別。可以把評論寫到自己網(wǎng)站上。然后向原始文章的服務(wù)器發(fā)送該網(wǎng)頁的URL及標(biāo)題、部分正文、網(wǎng)站名稱等信息(注)。盡管這一過程只是稱之為“發(fā)送TrackBackPing”,但通過這種辦法,在原始文章的地方就留下了你的評論的URL 、標(biāo)題等部分信息。當(dāng)然別人也可以向原始文章發(fā)送TrackBack Ping,所以在原始文章中就將包括你的TrackBack Ping在內(nèi)的所有評論都記錄了下來。
??????? 此外,如果你在自己網(wǎng)站上也設(shè)置了TrackBack Ping功能的話,那么誰都可以通過TrackBack Ping來發(fā)表針對你的意見了。這樣,多家網(wǎng)站就通過相關(guān)話題而聯(lián)接起來。各種評論在因特網(wǎng)上就像網(wǎng)眼一樣聯(lián)接起來。這樣就創(chuàng)造出了與日記網(wǎng)站完全不同的文化。
??????? 注:發(fā)送地址采用原始文章指定的URL,這一URL就稱為“TrackBack Ping URL”。TrackBack的技術(shù)標(biāo)準(zhǔn)刊登在“LowLife.jp”的blog網(wǎng)站上。
??????? 如果你使用的是服務(wù)商提供的Blog服務(wù),服務(wù)商沒有提供Trackback怎么辦?或者你的空間不足以放下太多的Trackback回復(fù),又怎么辦?到HaloScan.com去看看。
??????? 什么是Trackback呢? http://www.donews.net/weaver2000/archive/2004/12/08/197144.aspx
簡單說來,Trackback是網(wǎng)站與網(wǎng)站之間互相通告的一種方法。它能讓甲對乙說:“這篇文章可能是你感興趣的”,要實現(xiàn)這一動作,甲向乙發(fā)送一個Trackback Ping(引用通告)即可。在這種情況下,一個ping就是一條從一個web服務(wù)器發(fā)送到另一個服務(wù)器的短消息(a small message)。
Trackback Ping是由Moveable Type發(fā)明的規(guī)范,他們說Trackback是"a framework for peer-to-peer communication and notifications between web sites"。這里是他們的Trackback技術(shù)規(guī)范文檔:http://www.movabletype.org/docs/mttrackback.html 。
舉個例子來說明一下。比如我在魚頭的Blog中看了一篇我感興趣的文章,對這篇文章我自己有一些看法,如果按照傳統(tǒng)BBS的做法,我需要在魚頭這篇文章下發(fā)表自己的評論,但這樣做的話我的文字只能存在于魚頭的網(wǎng)站上,我無法再維護自己的這篇評論。另一個情況是我在自己的Blog中也在寫一篇相類似的文章,我希望魚頭也能來看一看我的這篇,傳統(tǒng)BBS的習(xí)慣還是得到魚頭的文章下發(fā)一篇回復(fù),把我的URL貼過去。
但有了Trackback Ping,我們的Blog不再需要這樣做。
Blog跟BBS有點重要的不同,Blog是一種個人創(chuàng)作,用Blog來發(fā)表自己的東西,保存自己的東西,即使是對他人Blog文章的評論也要在自己的Blog中永久保留下來。通過Trackbak,我就可以在自己的Blog中發(fā)表文章,同時把自己這篇文章的URL地址Ping到魚頭的那篇文章上去。這樣,所有閱讀魚頭文章的人也能通過Trackback順藤摸瓜地來我的Blog看我的文章。
所以,當(dāng)我們的Blog有了Trackback Ping功能,那么誰都可以通過Trackback Ping來發(fā)表意見和評論了。這樣,多家Blog網(wǎng)站就通過相關(guān)話題而聯(lián)接起來。各種評論在Internet上相互連接而織成一張大網(wǎng)。因此,可以說,Trackback創(chuàng)造出了Blog與BBS、Diary完全不同的文化,Blog的世界通過Trackback而變成真正的無限互連。
作為Blogger,讓我們習(xí)慣于這樣討論問題和做評論吧:把內(nèi)容寫在自己的Blog里面,Trackback Ping到別人的Blog。這個概念是論壇模式里從來沒有的,稱為Remote Commenting。
如何在Blog中實現(xiàn)Trackback?
在有Trackback功能的Blog系統(tǒng)中,每篇Blog文章都有兩個URL,一個是要訪問這篇文章所使用的URL,另一個就是Trackback Ping URL(引用通告地址),它是用來接受來自其他Blog網(wǎng)站Trackback Ping的程序。當(dāng)我發(fā)表文章的時候,想要通知魚頭的話,只需要把魚頭那篇文章的Trackback Ping URL貼到我這邊文章中來,我提交文章時,系統(tǒng)就會按照這個URL發(fā)送一個Ping給魚頭的那篇文章。而魚頭則將在自己的文章下看到類似這樣的一個引用通告:
標(biāo)題: Joyhero的文章
來自: Joyhero的Blog
摘要: Joyhero的文章內(nèi)容摘要...
地址: http://joyhero的文章地址
這個Trackback Ping是通過標(biāo)準(zhǔn)的HTTP協(xié)議從我的Blog發(fā)送到魚頭的Blog的,我的Blog發(fā)送一個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規(guī)范中,Ping是GET方式的HTTP請求,現(xiàn)在不再支持GET方式,只能用POST方式。參數(shù)包括:
title - 文章的標(biāo)題
excerpt - 文章的摘要。在Movable Type系統(tǒng)中,如果摘錄信息超過255個字符將會被截斷為252個字符,并在后面增加...三個字符
url - 文章的永久連接。象其它永久連接一樣,這個連接應(yīng)可能準(zhǔn)確地在頁面中定位文章的入口,因有疑問時這個鏈接會用到
blog_name - 發(fā)表文章的blog的名稱
在上述的參數(shù)中只有url是必須的。如果title沒有提供,url的值將被用作標(biāo)題。
當(dāng)我的Blog發(fā)出這個Trackback Ping后,將接收一個簡單的XML格式應(yīng)答,如果Ping成功,那么應(yīng)答的格式如下:
<?xml version="1.0" encoding="iso-8859-1"?>
<response>
<error>0</error>
</response>
而失敗應(yīng)答的格式為:
<?xml version="1.0" encoding="iso-8859-1"?>
<response>
<error>1</error>
<message>The error message</message>
</response>
TrackBack 的簡單概念和實現(xiàn)架構(gòu) |
TrackBack 初看起來很難理解, 不過理解之后就不會有問題了. |
最后用一句話總結(jié)這三大功能:
-
RSS:能讓用戶更方便的訂閱
- Permalink:能更好的讓你的文章被搜索引擎關(guān)注
- Trackback:能更好的與其他Blog進行交流、討論、溝通