Nginx跨域訪問(wèn)配置方式(Web反向代理跨域訪問(wèn)配置)
Nginx跨域訪問(wèn)配置(Web反向代理跨域訪問(wèn)配置)
出于安全的原因,瀏覽器限制從腳本內(nèi)發(fā)起跨域的HTTP
請(qǐng)求,除非響應(yīng)報(bào)文中包含了允許瀏覽器解析報(bào)文的CORS
響應(yīng)頭
也就是說(shuō),響應(yīng)報(bào)文的頭中要有以下幾個(gè)響應(yīng)頭
Nginx
要使用add_header
添加這幾個(gè)響應(yīng)頭
1.前后端分離的工程
一般情況下是使用Ajax
訪問(wèn)后端接口
Ajax
的請(qǐng)求頭為X-Requested-With
因此服務(wù)端要允許X-Requested-With
的請(qǐng)求頭
add_header 'Access-Control-Allow-Headers' 'X-Requested-With';
2.服務(wù)端要配置哪些域
是可以跨域訪問(wèn)到本服務(wù)器資源的
add_header 'Access-Control-Allow-Origin' '*';
注意:
- 如果使用了
add_header 'Access-Control-Allow-Credentials' 'true'
- 那么不能使用通配符
add_header 'Access-Control-Allow-Origin' 'www.baidu.com'; add_header 'Access-Control-Allow-Credentials' 'true';
3.服務(wù)器端要指定HTTP請(qǐng)求的方法
add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS'
案例
add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Headers' 'X-Requested-With'; add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS' # 由于跨域請(qǐng)求,瀏覽器會(huì)先發(fā)送一個(gè)OPTIONS的預(yù)檢請(qǐng)求,我們可以緩存第一次的預(yù)檢請(qǐng)求的失效時(shí)間 if ($request_method = 'OPTIONS') { add_header 'Access-Control-Max-Age' 2592000; add_header 'Content-Type' 'text/plain; charset=utf-8'; add_header 'Content-Length' 0; return 204; }
HTTP
請(qǐng)求頭詳解點(diǎn)這里查看。
對(duì)于跨域的配置,不是只有Nginx
可以配置,在Spring
中也提供了跨域訪問(wèn)的配置
詳見CorsFilter
、CorsConfiguration
、UrlBasedCorsConfigurationSource
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Nginx做靜態(tài)文件服務(wù)器,如何進(jìn)行權(quán)限驗(yàn)證
這篇文章主要介紹了使用Nginx做靜態(tài)文件服務(wù)器,如何進(jìn)行權(quán)限驗(yàn)證問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06Nginx的核心功能--正向代理、反向代理、緩存和Rewrite
Nginx作為一款高性能的開源Web服務(wù)器和反向代理工具,在負(fù)載均衡、緩存加速、安全防護(hù)等場(chǎng)景中扮演著關(guān)鍵角色,本文聚焦Nginx的四大核心功能--反向代理(七層/四層)、正向代理、緩存機(jī)制和正則表達(dá)式匹配,通過(guò)理論解析與場(chǎng)景化案例,深入掌握其設(shè)計(jì)思想與實(shí)踐技巧2025-05-05詳解Nginx中HTTP的keepalive相關(guān)配置
這篇文章主要介紹了Nginx中HTTP的keepalive相關(guān)配置,以及Nginx的Httpd守護(hù)進(jìn)程相關(guān)的keepalive timeout配置,需要的朋友可以參考下2016-01-01nginx 內(nèi)置變量詳解及隔離進(jìn)行簡(jiǎn)單的攔截
這篇文章主要介紹了nginx 隔離進(jìn)行簡(jiǎn)單的攔截詳解的相關(guān)資料,這里對(duì)nginx內(nèi)置變量進(jìn)行了簡(jiǎn)單的介紹并對(duì)隔離攔截進(jìn)行了詳解, 需要的朋友可以參考下2016-12-12