nginx如何解決請求跨域問題

nginx如何解決請求跨域問題

一般前端的請求是 網址都是 域名(端口 訪問的是80 或者 443),而后端的服務是 8080 端口,這個時候你請求http://106.520.156.210:8080/vic-indoor-pc/selectAllUser就會報跨域問題了(端口不同)。所以我在每個請求加了統一的前綴 /api ,請求變成了 http://106.520.156.210/api/vic-indoor-pc/selectAllUse (端口必須和前端一樣)。

前端發送請求:

http://106.520.156.210/api/vic-indoor-pc/selectAllUse

nginx轉發變成了:

http://106.520.156.210:8080/vic-indoor-pc/selectAllUse

經過Nginx 這樣轉發,對于瀏覽器來說,訪問的就是 80 ,但是請求的其實是 8080。rewrite “^/api/(.*)$” /$1 break; 這句就是把 /api 給刪除掉了然后 轉發到了 ?http://106.520.156.210:8080/

????????????????location?/api/vic-indoor-pc?{  ????????????????????????proxy_set_header?Client-IP??????$Remote_addr; ????????????????????????proxy_pass?http://106.520.156.210:8080/; ????????????????????????rewrite?"^/api/(.*)$"?/$1?break;?  ????????????????}

我還碰到了下載阿里OSS?存儲跨域的問題,也是這么解決的。(加上統一前綴)

????????????????location?/img/report?{  ????????????????????????proxy_set_header?Client-IP??????$Remote_addr; ????????????????????????proxy_pass?https://bilibili.oss-cn-shenzhen.aliyuncs.com/; ????????????????????????rewrite?"^/img/(.*)$"?/$1?break; ????????????????}

相關推薦:nginx教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享