Edzy_Java

            BlogJava :: 首頁(yè) ::  ::  ::  :: 管理 ::
            58 隨筆 :: 12 文章 :: 11 評(píng)論 :: 0 Trackbacks

          三大核心功能:

          • RSS
          • Permalink
          • Trackback Pin

          RSS
          ??????? 首先談RSS,RSS其實(shí)很多朋友都已有了解。RSS是站點(diǎn)用來(lái)和其他站點(diǎn)之間共享內(nèi)容的一種簡(jiǎn)易方式(也叫聚合內(nèi)容),通常被用于新聞和其他按順序排列的網(wǎng)站,一段項(xiàng)目的介紹也可以是包含新聞的全部介紹等。或者僅僅是額外的內(nèi)容或者簡(jiǎn)短的介紹。這些項(xiàng)目 的鏈接通常都能鏈接到全部的內(nèi)容。網(wǎng)絡(luò)用戶(hù)可以借助RSS Reader在不打開(kāi)網(wǎng)站內(nèi)容頁(yè)面的情況下閱讀支持RSS輸出的網(wǎng)站內(nèi)容。網(wǎng)站提供RSS輸出,有利于讓用戶(hù)發(fā)現(xiàn)網(wǎng)站內(nèi)容的更新。

          ??????? 現(xiàn)在很多站點(diǎn)都有RSS Feed,那么為什么是Blog的核心呢?RSS 本質(zhì)上中是一種遵循W3C RDF規(guī)范的XML格式,Blog和RSS結(jié)合十分緊密,自Blog一誕生以來(lái),標(biāo)準(zhǔn)的Blog站點(diǎn)都支持RSS技術(shù)規(guī)范,能夠包含網(wǎng)站的Logo、Link、標(biāo)題、內(nèi)容等等。

          Permalink

          ??????? 中文翻譯一般叫做固定鏈接,其實(shí)我覺(jué)得翻譯成靜態(tài)鏈接更為貼切。下面切入正題:

          ??????? 不得不承認(rèn),將動(dòng)態(tài)網(wǎng)頁(yè)鏈接rewriting成靜態(tài)鏈接是最保險(xiǎn)和穩(wěn)定的面向搜索引擎優(yōu)化方式。

          ??????? 此外隨著互聯(lián)網(wǎng)上的內(nèi)容以驚人速度的增長(zhǎng)也越來(lái)越突出了搜索引擎的重要性,如果網(wǎng)站想更好地被搜索引擎收錄,網(wǎng)站設(shè)計(jì)除了面向用戶(hù)友好(User Friendly)外,搜索引擎友好(Search Engine Friendly)的設(shè)計(jì)也是非常重要的。進(jìn)入搜索引擎的頁(yè)面內(nèi)容越多,則被用戶(hù)用不同的關(guān)鍵詞找到的幾率越大。在Google的算法調(diào)查一文中提到一個(gè)站點(diǎn)被Google索引頁(yè)面的數(shù)量其實(shí)對(duì)PageRank也是有一定影響的。由于Google 突出的是整個(gè)網(wǎng)絡(luò)中相對(duì)靜態(tài)的部分(動(dòng)態(tài)網(wǎng)頁(yè)索引量比較小),鏈接地址相對(duì)固定的靜態(tài)網(wǎng)頁(yè)比較適合被Google索引(怪不得很多大網(wǎng)站的郵件列表歸檔和BLOG按日期歸檔的文檔很容被搜的到),因此很多關(guān)于面向搜索引擎 URL設(shè)計(jì)優(yōu)化(URI Pretty)的文章中提到了很多利用一定機(jī)制將動(dòng)態(tài)網(wǎng)頁(yè)參數(shù)變成像靜態(tài)網(wǎng)頁(yè)的形式:

          實(shí)現(xiàn)方式主要有2種:

          ??????? 具體實(shí)現(xiàn)細(xì)節(jié)不是本文重點(diǎn),不再細(xì)述。很多BLOG程序后臺(tái)都能打開(kāi)此功能,也要注意WEB服務(wù)器的設(shè)置,使用虛擬主機(jī)無(wú)法設(shè)置服務(wù)器的朋友請(qǐng)參考path_info的一些資料。

          靜態(tài)地址還有什么好處:

          • 隱藏后臺(tái)實(shí)現(xiàn):這在后臺(tái)應(yīng)用平臺(tái)的遷移時(shí)非常有用:當(dāng)從asp遷移到j(luò)ava平臺(tái)時(shí),對(duì)于前臺(tái)用戶(hù)來(lái)說(shuō),根本感受不到后臺(tái)應(yīng)用的變化;
          • 簡(jiǎn)化數(shù)據(jù)校驗(yàn):比如我們需要將應(yīng)用從news.asp?id=234遷移成news.php?query=234時(shí),前臺(tái)的表現(xiàn)可以一直保持為 news/234.html。從實(shí)現(xiàn)應(yīng)用和前臺(tái)表現(xiàn)的分離:保持了URL的穩(wěn)定性,而使用WEB服務(wù)中的mod_rewrite甚至可以把請(qǐng)求轉(zhuǎn)發(fā)到其他后臺(tái)服務(wù)器上。

          ??????? 從技術(shù)層面來(lái)講,論壇如果想被搜索引擎更多的關(guān)注的話(huà),同樣可以實(shí)現(xiàn)Permalink。

          Trackback

          ??????? TrackBack最早是Movable上的一個(gè)小功能。可以說(shuō)就是這個(gè)小功能在blog界卻掀起了一場(chǎng)革命。

          ??????? TrackBack為將全世界無(wú)數(shù)個(gè)blog連接起來(lái)的功能。例如,當(dāng)你讀了某個(gè)網(wǎng)站的文章,想對(duì)此寫(xiě)下自己的感想。這個(gè)時(shí)候利用網(wǎng)站準(zhǔn)備的討論功能進(jìn)行留言是很最常見(jiàn)的做法。但這樣只是把自己的評(píng)論意見(jiàn)寫(xiě)下來(lái)向別人的網(wǎng)站投稿,而你自己手里卻什么也沒(méi)留 下。

          ??????? TrackBack 則與之有很大的區(qū)別。可以把評(píng)論寫(xiě)到自己網(wǎng)站上。然后向原始文章的服務(wù)器發(fā)送該網(wǎng)頁(yè)的URL及標(biāo)題、部分正文、網(wǎng)站名稱(chēng)等信息(注)。盡管這一過(guò)程只是稱(chēng)之為“發(fā)送TrackBackPing”,但通過(guò)這種辦法,在原始文章的地方就留下了你的評(píng)論的URL 、標(biāo)題等部分信息。當(dāng)然別人也可以向原始文章發(fā)送TrackBack Ping,所以在原始文章中就將包括你的TrackBack Ping在內(nèi)的所有評(píng)論都記錄了下來(lái)。

          ??????? 此外,如果你在自己網(wǎng)站上也設(shè)置了TrackBack Ping功能的話(huà),那么誰(shuí)都可以通過(guò)TrackBack Ping來(lái)發(fā)表針對(duì)你的意見(jiàn)了。這樣,多家網(wǎng)站就通過(guò)相關(guān)話(huà)題而聯(lián)接起來(lái)。各種評(píng)論在因特網(wǎng)上就像網(wǎng)眼一樣聯(lián)接起來(lái)。這樣就創(chuàng)造出了與日記網(wǎng)站完全不同的文化。
          ??????? 注:發(fā)送地址采用原始文章指定的URL,這一URL就稱(chēng)為“TrackBack Ping URL”。TrackBack的技術(shù)標(biāo)準(zhǔn)刊登在“LowLife.jp”的blog網(wǎng)站上。

          ??????? 如果你使用的是服務(wù)商提供的Blog服務(wù),服務(wù)商沒(méi)有提供Trackback怎么辦?或者你的空間不足以放下太多的Trackback回復(fù),又怎么辦?到HaloScan.com去看看。

          ??????? 什么是Trackback呢? http://www.donews.net/weaver2000/archive/2004/12/08/197144.aspx

            簡(jiǎn)單說(shuō)來(lái),Trackback是網(wǎng)站與網(wǎng)站之間互相通告的一種方法。它能讓甲對(duì)乙說(shuō):“這篇文章可能是你感興趣的”,要實(shí)現(xiàn)這一動(dòng)作,甲向乙發(fā)送一個(gè)Trackback Ping(引用通告)即可。在這種情況下,一個(gè)ping就是一條從一個(gè)web服務(wù)器發(fā)送到另一個(gè)服務(wù)器的短消息(a small message)。

            Trackback Ping是由Moveable Type發(fā)明的規(guī)范,他們說(shuō)Trackback是"a framework for peer-to-peer communication and notifications between web sites"。這里是他們的Trackback技術(shù)規(guī)范文檔:http://www.movabletype.org/docs/mttrackback.html

            舉個(gè)例子來(lái)說(shuō)明一下。比如我在魚(yú)頭的Blog中看了一篇我感興趣的文章,對(duì)這篇文章我自己有一些看法,如果按照傳統(tǒng)BBS的做法,我需要在魚(yú)頭這篇文章下發(fā)表自己的評(píng)論,但這樣做的話(huà)我的文字只能存在于魚(yú)頭的網(wǎng)站上,我無(wú)法再維護(hù)自己的這篇評(píng)論。另一個(gè)情況是我在自己的Blog中也在寫(xiě)一篇相類(lèi)似的文章,我希望魚(yú)頭也能來(lái)看一看我的這篇,傳統(tǒng)BBS的習(xí)慣還是得到魚(yú)頭的文章下發(fā)一篇回復(fù),把我的URL貼過(guò)去。

            但有了Trackback Ping,我們的Blog不再需要這樣做。

            Blog跟BBS有點(diǎn)重要的不同,Blog是一種個(gè)人創(chuàng)作,用Blog來(lái)發(fā)表自己的東西,保存自己的東西,即使是對(duì)他人Blog文章的評(píng)論也要在自己的Blog中永久保留下來(lái)。通過(guò)Trackbak,我就可以在自己的Blog中發(fā)表文章,同時(shí)把自己這篇文章的URL地址Ping到魚(yú)頭的那篇文章上去。這樣,所有閱讀魚(yú)頭文章的人也能通過(guò)Trackback順藤摸瓜地來(lái)我的Blog看我的文章。

            所以,當(dāng)我們的Blog有了Trackback Ping功能,那么誰(shuí)都可以通過(guò)Trackback Ping來(lái)發(fā)表意見(jiàn)和評(píng)論了。這樣,多家Blog網(wǎng)站就通過(guò)相關(guān)話(huà)題而聯(lián)接起來(lái)。各種評(píng)論在Internet上相互連接而織成一張大網(wǎng)。因此,可以說(shuō),Trackback創(chuàng)造出了Blog與BBS、Diary完全不同的文化,Blog的世界通過(guò)Trackback而變成真正的無(wú)限互連。

            作為Blogger,讓我們習(xí)慣于這樣討論問(wèn)題和做評(píng)論吧:把內(nèi)容寫(xiě)在自己的Blog里面,Trackback Ping到別人的Blog。這個(gè)概念是論壇模式里從來(lái)沒(méi)有的,稱(chēng)為Remote Commenting。

            如何在Blog中實(shí)現(xiàn)Trackback?

            在有Trackback功能的Blog系統(tǒng)中,每篇Blog文章都有兩個(gè)URL,一個(gè)是要訪問(wèn)這篇文章所使用的URL,另一個(gè)就是Trackback Ping URL(引用通告地址),它是用來(lái)接受來(lái)自其他Blog網(wǎng)站Trackback Ping的程序。當(dāng)我發(fā)表文章的時(shí)候,想要通知魚(yú)頭的話(huà),只需要把魚(yú)頭那篇文章的Trackback Ping URL貼到我這邊文章中來(lái),我提交文章時(shí),系統(tǒng)就會(huì)按照這個(gè)URL發(fā)送一個(gè)Ping給魚(yú)頭的那篇文章。而魚(yú)頭則將在自己的文章下看到類(lèi)似這樣的一個(gè)引用通告:

            標(biāo)題: Joyhero的文章
            來(lái)自: Joyhero的Blog
            摘要: Joyhero的文章內(nèi)容摘要...
            地址: http://joyhero的文章地址

            這個(gè)Trackback Ping是通過(guò)標(biāo)準(zhǔn)的HTTP協(xié)議從我的Blog發(fā)送到魚(yú)頭的Blog的,我的Blog發(fā)送一個(gè)POST格式的HTTP請(qǐng)求到魚(yú)頭那篇文章的Trackback Ping URL。這個(gè)請(qǐng)求的content type是application/x-www-form-URLencoded,它大概是這個(gè)樣子的:

            POST http://魚(yú)頭文章的TrackbackPingURL
            Content-Type: application/x-www-form-URLencoded
            title=Joyhero的文章&url=http://Joyhero的文章地址&excerpt=Joyhero的文章摘要&blog_name=Joyhero的Blog

            早期版本的Trackback規(guī)范中,Ping是GET方式的HTTP請(qǐng)求,現(xiàn)在不再支持GET方式,只能用POST方式。參數(shù)包括:

            title - 文章的標(biāo)題
            excerpt - 文章的摘要。在Movable Type系統(tǒng)中,如果摘錄信息超過(guò)255個(gè)字符將會(huì)被截?cái)酁?52個(gè)字符,并在后面增加...三個(gè)字符
            url - 文章的永久連接。象其它永久連接一樣,這個(gè)連接應(yīng)可能準(zhǔn)確地在頁(yè)面中定位文章的入口,因有疑問(wèn)時(shí)這個(gè)鏈接會(huì)用到
            blog_name - 發(fā)表文章的blog的名稱(chēng)
            在上述的參數(shù)中只有url是必須的。如果title沒(méi)有提供,url的值將被用作標(biāo)題。

            當(dāng)我的Blog發(fā)出這個(gè)Trackback Ping后,將接收一個(gè)簡(jiǎn)單的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 的簡(jiǎn)單概念和實(shí)現(xiàn)架構(gòu)

            TrackBack 初看起來(lái)很難理解, 不過(guò)理解之后就不會(huì)有問(wèn)題了.
            基本上它的構(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è)主題中.

            說(shuō)白了, 就是一個(gè)跨站點(diǎn)的留言系統(tǒng). (希望算是比較正確的描述 )

          TrackBack 的實(shí)現(xiàn)有兩個(gè)重點(diǎn):
          1. 作為 Blog 服務(wù)端時(shí)(也就是 Blog A), 需要能接收到各個(gè)使用了 TrackBack 連接的 Blog 發(fā)送到自己這里的信息并發(fā)回反饋.
          需要解析發(fā)來(lái)的數(shù)據(jù), 不過(guò)這個(gè)很容易實(shí)現(xiàn).
          2. 作為客戶(hù)端時(shí)(Blog B), 需要在有新的回復(fù)時(shí)通過(guò)指定的鏈接發(fā)出內(nèi)容摘要給服務(wù)端.
          目前官方文檔定義了兩種方式:
          1) 通過(guò) QueryString (正在逐步廢除)
          2) 通過(guò) Post Form 格式 (通過(guò) HTTP Header 模擬的 Form Post)
            PHP 可以通過(guò) fopen 實(shí)現(xiàn). ASP 可以通過(guò) ServerXMLHTTP 實(shí)現(xiàn)(老的 XMLHTTP 性能和功能不理想). PERL 的請(qǐng)參考 MovableType.

            其它的就是 TrackBack List RSS 和 AutoDiscovery. 前者我實(shí)現(xiàn)了, 后者沒(méi)有打算, 雖然還算簡(jiǎn)單.
          Trackback List 沒(méi)多大用處, 只是用 XML 列出所有發(fā)到此 URL 的所有 Trackback 罷了.

          AutoDiscovery 其實(shí)就是在頁(yè)面里面隱藏一段代碼, 給 Trackback 客戶(hù)端自動(dòng)尋找到 Trackback URL 而已(有人說(shuō) AutoDiscovery 會(huì)毀了 TrackBack 的實(shí)用性, 我深以為然, 因?yàn)檫@會(huì)給 spam robot 可乘之機(jī)).

            但是目前 Trackback 還存在編碼不同的問(wèn)題, 因?yàn)橐?guī)范里面沒(méi)有規(guī)定. 例如我的 Blog 是 GB2312 而別人的是 UTF-8, 那么發(fā)過(guò)去就是亂碼. 要把 Blog 轉(zhuǎn)成 UTF-8 就需要 Windows 2000 Server 及更高版本的服務(wù)器了. 為此猶豫中.



          最后用一句話(huà)總結(jié)這三大功能:
          • RSS:能讓用戶(hù)更方便的訂閱
          • Permalink:能更好的讓你的文章被搜索引擎關(guān)注
          • Trackback:能更好的與其他Blog進(jìn)行交流、討論、溝通
          posted on 2006-11-15 18:14 lbfeng 閱讀(262) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 新技術(shù)雜談
          主站蜘蛛池模板: 余干县| 静安区| 清水河县| 天全县| 彰武县| 四会市| 大冶市| 石泉县| 吉林省| 鹤峰县| 米易县| 江华| 涿州市| 容城县| 阳原县| 霍邱县| 庆安县| 夹江县| 阿瓦提县| 诸暨市| 汕头市| 衡阳市| 遂宁市| 如皋市| 铁岭市| 彭阳县| 舞钢市| 东明县| 台中县| 吴忠市| 普陀区| 弥勒县| 锦州市| 措美县| 望奎县| 昌图县| 南通市| 牡丹江市| 镇平县| 屏南县| 南岸区|