友好的
url位址,很多**做到了這一點,有些人會理解為友好的
url位址更便於使用者記憶,僅此而已。事實上,這只是乙個方面,它對於搜尋引擎優化也有一定的好處。現在的搜尋引擎收錄時,對不同的位址確實不會有不同的待遇。我現在舉出兩個例項:
類似這樣的**我們經常遇到,很顯然,後者的位址更容易被我們記住
。通常我們是通過重寫
url位址來做到這一點的。我暫時所知道的重寫
url位址好處有:
1搜尋引擎在收錄時會將位址加粗顯示。
這一點大家可以去試試就知道了,本來想截圖,太佔地方。
2隱藏真實目錄。
這似乎對搜尋引擎優化沒有什麼好處,但是對於其他方面的好處大家可想而知。
另外,這樣做網頁被搜尋引擎收錄似乎更容易一些,搜尋引擎往往對靜態頁面更感興趣。重寫方式良好
url位址似乎更容易被「蜘蛛」理解,這點,我也沒有很充分的理由,所以先不單獨列作一條。
注意:重寫
url位址的好處是很明顯的,但是在效率方面會讓你的站點有所降低,尤其是不當的重寫方式,會大大地降低站點的執行效率,有的甚至會發生錯誤。當然,乙個好的重寫方式自然給站點帶來的效率影響也是很小的,因此,這些影響自然就微乎其微了。
下面向大家介紹一些常用的
url重寫方式(一般不喜歡貼,但是為了更方便地說明問題還是貼了幾張)。這裡需要申明一下,由於我們使用最多的還是
iis,在這裡使用的均為
iis6.0
,其它iis
1)isapi_rewrite
官方**:
iis層次的url
重寫,使用比較方便。只需要簡單地修改配置檔案就可以了,但是不是開源也不是免費的,試用期只有
30天。我在這裡只是簡單的說明,有需要的朋友購買後可以去看完整的使用文件。
,將其屬性修改為可寫,我們的重寫規則就寫在裡面。當你確定你的重寫規則全部寫好後,可以將其又改為唯讀。
開啟httpd.ini
檔案,我們在後面新增自己的重寫規則。這裡新增一條示例規則:
rewriterule ^/hello-world.html$ /news.aspx?id=1
內容很簡單,就是將
hello-world.html
重寫到/news.aspx?id=1(^
和$分別為規則內容的分界符)。這種方法只是簡單的介紹,而且試用版只能對整個
iis配置,不可以對逐個站點配置,下面是執行效果圖:
2)urlrewriting.net
官方**:
這是我們使用得比較多的一種
url使用起來其實也比較簡單,和前面的一樣,需要一點點正規表示式的知識,有興趣的朋友稍微去看下就
okdll
檔案新增到引用,在我的演示示例中,大家可以參照我的
webconfig
檔案的寫法,關鍵部分是下面的**:
<
rewrites
>
<
addname
="rewrite"
virtualurl
="^~/(.*)/(.*).html"
rewriteurlparameter
="excludefromclientquerystring"
destinationurl
="~/default.aspx?category=$1
&id=$2"
ignorecase
="true"/>
rewrites
>
這個節點是我們存放重寫方法的地方,其餘部分都是一樣的。我這裡展示了兩個引數的
url重寫,因為乙個引數很容易,大家在寫的時候可能會遇到問題,重寫規則與第一種方法中類似。重寫後的效果如下:
簡單的演示**如下:
還有一種常用的
url重寫工具與
urlrewriting.net
類似,叫
urlrewriter.net
,使用也幾乎相同,這裡就不再介紹了。
3)建立自己的重寫**
使用工具,有時候有一些侷限性。比如說在某些虛擬主機中,可能就不支援。這樣我們可以建立自己的重寫**,雖然稍微複雜,但比較適合規模較小的站點。借助全部應用程式類,我們可以將重寫方法寫在應用程式啟動執行部分,就是大家都知道的
global.asax
檔案。在
方法中可以完成我們的重寫方法。我在這裡簡單地演示一下,相信很多人都使用過:
void
} 整個重寫過程就在這個檔案中完成,只是在轉向固定的位址時有點麻煩。
前面介紹了幾種
url重寫的方法,使用起來都比較方便。但有一種能達到目的作法(友好的
url位址)並非
url重寫一種。
很多朋友都把從動態位址轉換到動態位址的過程叫做靜態化(這樣並不準確)。就像現實生活中一樣,很多東西都真真假假得讓人模糊得分辨不出來。靜態化也是這樣,通常把靜態分真靜態和偽靜態,但是這樣的真假似乎對我們更有好處,不像現實生活中。而且只要我們稍加觀察,就能分辨其中的真偽。很顯然,偽靜態只是形式上的靜態,確實,它只是把
url位址轉換成靜態了,內容仍然是動態的。另外一種方式則是確實將(部分)內容完全靜態化了,至少生成了乙個靜態的檔案。
好多朋友其實都知道,就是利用模板生成了新檔案。現在很多站點都這麼做了,這樣做有乙個很大的好處,就是在訪問量很大時可以很大程度地減小資料庫的壓力。當然,就算生成了靜態的模板,有些資料還是需要動態獲取的,這時候我們使用
ajax
可以比較方便地獲取資料。曾經為了使用方便,弄了乙個利用模板檔案生成檔案的類,使用起來比較簡單。這樣做的原理本來就比較簡單,有興趣的朋友可以弄去看看,**就不貼出來了。使用的時候很容易(如果你把剛剛我說的那個檔案放到了
資料夾的話),我舉個例子:
string
strnewshtml = new
string ;
這裡是需要生成的內容
string
stroldhtml = new
string ;
這裡是需要替換的標籤
files
.creathtmlpage(strnewshtml, stroldhtml, "newsmode.htm", strfilepath)
生成新檔案
剩下的內容就是用ajax獲取你的動態內容了,相信大家都經常用到了,在這裡就不說了。
搜尋引擎優化 URL重寫
rhel下弄得我半夜腦子裡全是命令,halt都停不下來,直接失眠了。昨天一天不敢進紅帽系統,在windows下研究負載均衡理論寫了一天 明天就能動手試試了,晚上看了些seo優化,動手試了試,雖不多也是學習啊。常規的php字串操作函式的執行比正規表示式要快很多,因此只有需要的時候才使用後者。例如,如果...
搜尋引擎優化程式設計
一直以來都有乙個想法,把seo search engine optimization 知識總結一下,讓自己有乙個系統化的認識。前一段時間總是因為一些瑣事耽誤,今天總算決定要花幾天時間來好好寫寫了。希望對這一方面感興趣的朋友支援下,另外,由於我也只是把自己的想法寫下來了,當中難免有錯誤遺漏之處,希望高...
搜尋引擎優化
十 註冊alexa,並通過 認證。http www.alexa.com data details contact info?url taoyinqing.com 中國雅虎 http search.help.cn.yahoo.com h4 4.html 微軟live msn http search.m...