問題:nginx
項目開始,nginx是經過匹配control
來轉發的,後面隨着業務不停增長,每次都須要修改nginx
,甚是麻煩,因此決定爲不一樣的服務
取一個名稱——服務域名稱
,而後咱們經過匹配服務域名稱的模式就解決這個不一樣修改配置的問題了。web
剛開始的nginx配置:api
location ~* /api/AppVersion { proxy_pass http://192.168.1.88:8888; }
目前指望的配置(serviceName
後面包含n多控制器):安全
location ~* /api/Business { proxy_pass http://192.168.1.88:8888; }
若是隻是web站點,這麼作就差很少ok了,可是咱們有一個app
,老版本須要升級,只能調用第一中接口,可是咱們新版本的接口都加上了serviceName
(/api/Business/AppVersion
),目前想到兩種方式:app
一、提供新老版本的api接口;
二、經過nginx
配置重寫(從新轉發)——當時不會,只是知道nginx強大,應該可以支持;code
因此查找了一下,以做備忘:接口
location ~* /api/AppVersion/GetVersion { rewrite ^ http://192.168.1.88:8888/api/Business/AppVersion/GetVersion; }
那麼當你調用老接口/api/AppVersion/GetVersion
的時候,nginx會自動幫你轉發到新接口上/api/Business/AppVersion/GetVersion
,也不須要修改代碼,安全方便;域名