最近要將官網搬到另外一台主機上
但有些服務還是要回到原機器上
透過nginx的設定來達成預期目標
如果是method get 可以透過rewrite完成
ex:
server {
server_name web.ozzysun.com
location / {
rewrite /api/send_get http://oldweb.ozzysun.com/api/send_get;
rewrite /api/send_get2 http://oldweb.ozzysun.com/api/send_get2;
}
}
如果要轉的url都是method:get 就可以在一個location內把要轉的都一起設定完
注意 只能對應get
如果是post的轉址 可以透過return去做
ex:
server {
server_name web.ozzysun.com
location /api/send_post {
return 307 http://oldweb.ozzysun.com/api/send_post;
}
}
但get可以透過return去轉嗎?
可以 但要把參數用$args帶過去
ex:
server {
server_name web.ozzysun.com
location /api/send_get {
return 307 http://oldweb.ozzysun.com/api/send_get?$args;
}
}
要注意的是rewrite真正的意義是
重整你的url 再交給下一個處理
當然 如果rewrite 有帶到http作用就跟return很像了
沒有留言:
張貼留言