體驗更優排版請移步原文:http://blog.kwin.wang/website/nginx-rewrite-realize-domain-forward.htmlhtml
本身的blog域名最開始用的vblog.win,後來搞到kwin.wang就換用了 http://blog.kwin.wang 這個子域名,原先使用米發把vblog.win轉發到主站,後來米發用了一段時間就不能正常轉發了,證實免費的東西仍是不太靠譜,前段時間將本身的網站從新改版創建了一下,幾個站點使用Nginx作反向代理,這裏就想用Nginx來實現一下域名轉發。nginx
Nginx有個rewrite規則,就是用來實現URL重定向的,這裏簡單介紹:web
rewrite <regex> <replacement> [flag];瀏覽器
關鍵字 正則 替代內容 flag標記dom
flag標記說明:網站
last //本條規則匹配完成後,繼續向下匹配新的location URI規則搜索引擎
break //本條規則匹配完成即終止,再也不匹配後面的任何規則spa
redirect //返回302臨時重定向,瀏覽器地址會顯示跳轉後的URL地址代理
permanent //返回301永久重定向,瀏覽器地址欄會顯示跳轉後的URL地址code
個人配置是這麼寫的:
server { listen 80; server_name vblog.win www.vblog.win; rewrite /.* http://blog.kwin.wang$uri permanent;
}
這裏 $uri 是指匹配正則後跳轉的目標地址,好比訪問 vblog.win/about 就會跳轉到 http://blog.kwin.wang/about,很是簡單。
使用域名轉發有利於網站首選域的確認,多個路徑對應同一資源域的狀況應該儘可能採用這種方式來處理,有利於網站權重的集中,對於搜索引擎和用戶來講都很友好。另外,對Nginx rewrite的介紹比較簡單,更深層次使用場景還有待研究。