nginx下的301重定向

因為貓神留下的一個免費tk域名~(不知道什麼時候會撤掉~) ==! 所以本部落格目前有兩個域名……..加上主域名~ 總共進行了3個域名(Godaddy上還停放著一個~明年二月份過期~)的301重定向….

什麼是301重定向? 來自維基上的解釋~

301 Moved Permanently

被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。
新的永久性的URI应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。
如果这不是一个GET或者HEAD请求,因此浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。

為什麼要設定301?吼吼~ 事實上上面的解釋是較為單純的解釋~ 嗯,功利點講的話就是讓自己的網站的權重在搜索引擎中更加集中~多個域名同時指向一個網站的時候,就會發生SE(Search Engine)對網站的權重分散現象~ 因為SE搞不清楚到底是那個網址是最為重要的~ ==!當然,還有一個作用就是當你換域名的時候,這是一個對SE最為友好的方法~SE只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。~這就是301的好處~

因為使用的是VPS,或許從設定上沒有使用控制面板那麼方便,但是挺簡單的~ 還是要用到nginx的rewrite~(話說nginx下的rewrite還真是強大~ 可以對twitter官方API進行反向代理~ ==!幾條語句就能解決API的問題~ 讓我有點不爽~)

貼一下規則~從imcat.tk重定向到qinfy.net 因為個人比較崇尚清晰的結構~ 所以是重新構建一個server進行實現~ 修改的是/usr/local/nginx/conf/nginx.conf這個設定檔案~ 直接在最後一個}之前添加即可~

server
{
server_name imcat.tk;
rewrite ^(.*) http://guu.hk$1 permanent;
}

OK,自己照著葫蘆畫瓢~ 編輯完上傳回去,因為個人實在很不習慣字符介面下的編輯軟體… 所以down下來改…再傳~

然後是測試一下语句有无错误~ 輸入以下指令~

/usr/local/nginx/sbin/nginx -t

會提示:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful

測試成功~

之后重啟nginx~ 輸入下面指令~

/usr/local/nginx/sbin/nginx -s reload

重啟之後

測試一下定向是否成功?!~ 輸入下面这条指令~

curl -I imcat.tk //這個是被定向的域名,不多說你自己知道的

會輸出:

HTTP/1.1 301 Moved Permanently
Server: nginx/0.7.65
Date: Tue, 03 Aug 2010 01:12:37 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location: http://guu.hk/

o(∩_∩)o 哈哈,服務一條龍~ 就這樣設定全部OK啦~

Leave a Reply

Your email address will not be published. Required fields are marked *