nginx配置允許跨域問題


nginx配置允許跨域

 

 

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'token,DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';

 

如果加上了配置還不可以,就確認下,請求方法和headers是否在條件中,沒有的話就在Methods或者Headers添加。(比如:遇到過一次,不允許token跨域,就在Headers中添加了token)

 

還有一種情況配置了跨域還是不生效,我之前剛好測試的時候,隨便測了個本地綁host的地址,懶得沒弄文件,就是個404的頁面。這就出問題了。。。。。。。。。。怎么配置都是無法跨域。鼓搗了很久,終於查到了原因

當狀態碼是 200,201,204,206,301,302,303,304,307 時nginx會添加header,而 401、404、500,都沒有添加header。由於 Access-Control-Allow-Origin * 選項未生效,導致返回的response header里面沒有允許跨域請求的選項,怎么解決呢:

add_header Access-Control-Allow-Origin *;  后面添加always,變為:
add_header Access-Control-Allow-Origin * always;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM