域名跳转
案例:當訪問lsx.com網站,是我最早論壇的域名。回車之后會自動跳轉到lshx.com。
為什么藥lsx跳轉到lshx.com呢?
為了統一品牌。建議換成了lshx.com。所有之前的lsx.com就不要用了,就讓它跳轉到lshx.com。是因為之前lsx.com上有很多的老用戶,他們記得的地址是lsx.com。所有之前的域名還要使用,讓老用戶輸入lsx.com能訪問到lshx.con這個網站。
為什么要跳轉,而不使用之前的域名呢?
這個涉及seo權重問題,權重怎么來的呢?是百度蜘蛛抓取了網站上的頁面,保存在了它的數據庫上,用戶才能查找到。涉及seo排名靠前權重越高,因為百度認為是有價值的,所以提升了網站的權重,而它判斷網站是根據域名來的。而一個網站可以用兩個域名來訪問,而百度會認為你的第二個域名是一個冒牌貨。比如之前域名叫lsx.com,而lshx.com又能訪問之前的網站,百度一對比發現怎么一模一樣的呢,而之前lsx.com是網站的正主。會認為后面這個lsxh域名是冒牌貨。會把高的權重給lsx,把低的權重給lshx。為了解決這個問題,想到了一個方案,把lsx跳到lshx網站去。并且定義一個301(永久重定向)狀態碼。百度人301它認為lsx不用了,把lsx權重給降下來。把所有的權重加到lshx上。
需求,把123.com域名跳轉到www.123.com,配置如下:
<VirtualHost?:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
ServerAlias 123.com
<IfModule mod_rewrite.c> //需要mod_rewrite模塊支持
RewriteEngine on //打開rewrite功能
RewriteCond %{HTTP_HOST} !^www.123.com$ //定義rewrite的條件,主機名(域名)不是www.123.com滿足條件跳轉到123.com來,以123.com為主域名
RewriteRule ^/(.)$?http://www.123.com/$1?[R=301,L] //定義rewrite規則,當滿足上面的條件時,這條規則才會執行。比如123.com/12.php(^/(.))$1表示(.)也就是12.php。其中12.php保持不變,前面變更。R=301表示永久重定向,L表示只跳一次last
</IfModule>
</VirtualHost>
測試:
/usr/local/apache2/bin/apachectl -M|grep -i rewrite //若無該模塊,需要編輯配置文件httpd.conf,刪除rewrite_module (shared) 前面的#
/usr/local/apache2.4/bin/apachectl -t
/usr/local/apache2.4/bin/apachectl graceful
curl -x127.0.0.1:80 -I 123.com //狀態碼為301. 123.com為serveralias別名Windows測試要在hosts定義
curl -x192.168.211.149:80 www.example.com -I //-I顯示狀態碼
HTTP/1.1 301 Moved Permanently
狀態碼
404 內容不存在
401 賬號密碼驗證
301 永久跳轉
302 臨時跳轉
403 granted改成denied出現403
200 允許訪問
本文轉自 蝦米的春天 51CTO博客,原文鏈接:http://blog.51cto.com/lsxme/2052682,如需轉載請自行聯系原作者
總結
- 上一篇: 女人梦到买鸡蛋是什么意思
- 下一篇: 梦到蟒蛇是胎梦的预兆吗