這幾天在一個站長群中幾次看到討論關(guān)于網(wǎng)站301重定向的問題,在討論的過程中,學(xué)習(xí)到了不少如何合理地去設(shè)置網(wǎng)站的301重定向腳本,也總結(jié)了自己之前做站時所未能注意到的細(xì)節(jié),在這里,把這些內(nèi)容總結(jié)并分享給廣大站長朋友。
在這里,我主要針對LINUX主機(jī)下的用DEDECMS架起的網(wǎng)站作301重定向分析(主要是利用.htaccess文件來設(shè)置重定向),一是因為篇幅有限,二是這樣比較有針對性,如果是用其它方式架站的朋友,可以根據(jù)自己的實際情況作相應(yīng)的修改和設(shè)置,本文僅提供一種方法,一種思路。
一、 建立.htaccess文件
在本地的WINDOWS平臺下,是無法直接建立.htaccess文件的,系統(tǒng)會提示必須填寫文件名,因為對于WIN來說,文件名為“.htaccess”的只是一個只有文件后綴而沒有文件名的文件,而在LINUX下,這種文件是系統(tǒng)文件。解決的辦法就是,先用FTP在服務(wù)器上建立一個.htaccess文件的,然后再下載到本地主機(jī)編輯,文件下載下來后,是允許修改的,上面的情況也就不會出現(xiàn)了。這個問題當(dāng)初困擾了我很久,這里說明一下可能會對.htaccess文件不怎么熟悉的朋友有好處。
二、 集中根域名和二級域名權(quán)重
新手站長們有時候會對類似于www.xxxx.com和xxxx.com這兩個域名的權(quán)重比較迷惑,在建站初期可能會為到底選擇哪個作為主域名費盡心機(jī)。我認(rèn)為,頂級域名權(quán)重最高,也就是說,cytao.com的權(quán)重比其它的二級域名高,因此,選擇域名時,頂級域名是很好的選擇。但是,帶WWW的二級域名比較符合用戶的習(xí)慣,看起來感覺也好像順眼一點(純屬個人見解),所以,如果選擇二級域名作為主域名的話,我們就得把其它的域名(包括頂級域名)的權(quán)重轉(zhuǎn)移到主域名上,解決這個問題的方法就是在.htaccess文件里加上兩行301重定向代碼,代碼在下面給出樣例。
三、 解決網(wǎng)站默認(rèn)頁面的權(quán)重分散問題
由于自己對于DEDECMS比較熟悉,之前建的站都是用它架構(gòu)。直到有一天,跟另一站長交換友情鏈接時,他告訴我,我的網(wǎng)站首頁有跳轉(zhuǎn),訪問www.xxxx.com時跳轉(zhuǎn)到www.xxxx.com/index.html,因此拒絕和我交換鏈接。于是我發(fā)現(xiàn),DEDECMS的默認(rèn)首頁為index.php,這個文件先是判斷是否存在靜態(tài)首頁文件,若存在,則跳轉(zhuǎn)。于是我站就被跳轉(zhuǎn)到了靜態(tài)文件上了。后來我想了想,其實這就是網(wǎng)站的默認(rèn)頁面設(shè)置問題,只要在.htaccess文件里設(shè)置好默認(rèn)頁文件名和順序就行了。建議用CMS建站的朋友,回去查看一下自己的站是否也有這種情況并作相應(yīng)的修改。
下面給出我站的.htaccess文件代碼,朋友們可以參考一下:
Options +FollowSymlinks
RewriteEngine on
DirectoryIndex index.html index.htm index.php
RewriteCond %{http_host} ^cytao.com [nc]
RewriteRule ^(.*)$ http://www.cytao.com/$1 [r=301,nc]
ErrorDocument 404 /404.htm
注:上面代碼行與行之間的空行不能刪除,否則出錯;DirectoryIndex的文件順序必須根據(jù)自己網(wǎng)站的情況設(shè)置。
好了,我的經(jīng)驗就分享到這里,下篇將討論一下關(guān)于404頁面的制作應(yīng)注意的問題,本文來源于機(jī)客網(wǎng) www.jikew.com