關於跨域是什麼、產生跨域的條件等基礎概念,我就不在此記錄了。我們直接來看nginx解決跨域的方法。
對於簡單請求新增響應頭
location /
或者
http
新增完成後,reload過載nginx配置檔案。
可以在網路請求中驗證是否加入成功,
如果上面方法不管用,那你就要看你的跨域請求是不是options
了。
mdn的cors一文中提到:
規範要求,對那些可能對伺服器資料產生***的 http 請求方法(特別是 get 以外的 http 請求,或者搭配某些 mime 型別的 post 請求),瀏覽器必須首先使用 options 方法發起乙個預檢請求(preflight request),從而獲知服務端是否允許該跨域請求。如下圖產生的
options
請求,![](https://pic.w3help.cc/db4/ff38dce4d42567b326f6458856f0e.jpeg)
location ~
/number/
有些文章給的設定會報來自 cors 預檢通道的 cors 頭 'access-control-allow-headers' 的令牌 'x-request缺失
,
把我上面的來自 cors 預檢通道的 cors 頭 'access-control-allow-headers' 的令牌 'x-reques
添上就能解決這個問題了。
nginx記一次解決跨域問題的記錄
在nginx中配置proxy pass時,當在後面的url加上了 相當於是絕對根路徑,則nginx不會把location中匹配的路徑部分 走 如果沒有 則會把匹配的路徑部分也給 走。下面四種情況分別用http 192.168 1.4 proxy test.html 進行訪問。第一種 location...
記一次跨域和nginx配置問題
請求是跨域請求,從a.mycompony.com到b.mycompony.com 後端設定了如下引數,表示前端允許post和get方式跨域請求 response.setheader access control allow origin response.setheader access contr...
nginx解決跨域問題!
1 問題背景 前端呼叫線上後段時出現跨域問題!解決方法nginx的location頭部增加配置 add header access control allow headers add header access control allow methods get,post,options,head,...