建過網(wǎng)站的朋友都知道,每個網(wǎng)站都是需要通過至少一個域名(通過是頂級域名)來訪問的。網(wǎng)上很多文章都有介紹到一個問題,那就是關(guān)于帶www域名和不帶www域名的權(quán)重問題,若不做301重定向,可能會造成權(quán)重分散,從而使網(wǎng)站競爭力下降。且不討論這個觀點的正確性,就技術(shù)角度而言,如何將不帶www的域名做301重定向到帶www的域名上呢?有以下幾個解決方案。
方案一:通過偽靜態(tài)組件實現(xiàn)301重定向
常見的偽靜態(tài)組件有好幾種,比如Linux Apache下的.htaccess,Windows系統(tǒng)下的httpd.ini或web.config。不論哪一種,都可以實現(xiàn)301重定向。以.htaccess為例,這是一個文件,這個文件一般存放于網(wǎng)站的根目錄。一旦訪問這個網(wǎng)站,服務(wù)器就會先執(zhí)行這個.htacccess文件,這個文件里可以寫各種偽靜態(tài)的代碼,而301重定向就是其中之一。以下是.htaccess的301重定向?qū)懛ǎ?/p>
RewriteCond %{http_host} ^aueha.cn$ [NC]
RewriteRule ^(.*)$ http://www.aueha.cn$1 [R=301,L]
簡簡單單2行代碼就能解決問題,第1行代碼是不帶www的域名,第2行是帶www的域名。上面代碼中的意思是將aueha.cn永久重定向到www.aueha.cn。其效果就是當(dāng)訪問aueha.cn時會直接跳轉(zhuǎn)到www.aueha.cn。
方案二:通過虛擬主機配置實現(xiàn)301重定向
現(xiàn)在很多虛擬主機都可以在控制面板里設(shè)置301重定向(并非所有虛擬主機產(chǎn)品都支持),如果你的正好支持,那么設(shè)置就更加簡單了。以阿里云虛擬主機為例,通過下面的步驟就可以輕松設(shè)置301重定向了。
301重定向不僅適用于頂級域名,也適用于網(wǎng)站中的子頁面,它的作用非常大,比如在網(wǎng)站改版升級時,使用301永久重定向?qū)⑴f的頁面過渡到新頁面,可以大大減少因改版造成的權(quán)重流失。