今天找了找網(wǎng)上的nginx 301代碼,發(fā)現(xiàn)不是不生效就是錯誤,幾經(jīng)修改才成功。下面發(fā)一個基于nginx的子目錄301到其他域名(URL)的規(guī)則。作用是例如訪問http://blog.jiajieit.net/gq/ (有杠和沒杠是不同的,下面的代碼中可以看出來),自動301到 http://gq.jiajieit.net 。
下面我來解釋一下代碼,只是基本的代碼。下面“location ~* ^/gq/ {” 里的/gq/是指訪問 http://當(dāng)前域名/gq/ 跳轉(zhuǎn)到新域名的意思,反之把后面的杠去掉就是訪問http://當(dāng)前域名/gq 跳轉(zhuǎn)到新域名的意思。
“rewrite ^/gq/(.*)$”中的/gq/同上。中間的域名是指要跳轉(zhuǎn)的域名或URL。前面的 $ 是指原地址后面的所有路徑,后面的 $1 同上,也就是說跳轉(zhuǎn)后所有路徑不變,只是前面的域名變了。
location ~* ^/gq/ {
rewrite ^/gq/(.*)$ http://gq.jiajieit.net/$1 permanent;
}
進(jìn)入Linux,找到/usr/local/nginx/conf下的nginx.conf,把代碼插入到server片區(qū)的location之間,推薦使用SFTP上傳和下載。
按上面的格式添加并保存后上傳即可。