配置nginx支援跨域訪問

2022-06-15 17:42:08 字數 1133 閱讀 2184

解決方案:

因為nginx預設是禁止跨域訪問的,所有當跨域請求資料的時候拿不到相應的資料,特別是字型。

生產環境介紹:

訪問www.a.com的時候,需要呼叫www.b.com下的css、js、image、字型等,因為設計到跨域,所以nginx拒絕了我的字型的請求,所以在www.b.com下面的server中加了乙個location即可。12

34# 由於字型使用跨域的方式進行的呼叫,預設瀏覽器拒絕訪問,加上這個location就可以在其他網域名稱下訪問這個網域名稱的字型了

location ~* \.(eot|ttf|woff|svg|otf|woff2)$

生產環境遇到的問題用上述方法解決了,下面說說如何允許跨域:

在需要允許跨域的server中下面加上下面三句**即可:12

3456

789# 該字段是必須的。它的值要麼是請求時origin欄位的值,要麼是乙個*,表示接受任意網域名稱的請求。

add_header'access-control-allow-origin''*';

# 該欄位可選。它的值是乙個布林值,表示是否允許傳送cookie。

#  預設情況下,cookie不包括在cors請求之中。設為true,即表示伺服器明確許可,

#  cookie可以包含在請求中,一起發給伺服器。這個值也只能設為true,

#  如果伺服器不要瀏覽器傳送cookie,刪除該欄位即可

add_header'access-control-allow-credentials''true';

# 該字段是必須的,用來列出瀏覽器的cors請求會用到哪些http方法,上例是put。

add_header'access-control-allow-methods''*';

Nginx配置跨域訪問

由於瀏覽器同源策略的存在使得乙個源中載入來自其它源中資源的行為受到了限制。即會出現跨域請求禁止。通俗一點說就是如果存在協議 網域名稱 埠或者子網域名稱不同服務端,或一者為ip位址,一者為網域名稱位址 在跨域問題上,域僅僅是通過 url的首部 來識別而不會去嘗試判斷相同的ip位址對應著兩個域或者兩個域...

跨域訪問(nginx)

注意 jsonp解決跨域只支援get 請求。ajax 需要自己寫個 函式 function onback 後台介面注意 context.response.write jsonp json.tostring trimend control type 2018 03 21 18 50 09string ...

讓Apache 和nginx支援跨域訪問

1,如何讓apache支援跨域訪問呢?步驟 修改httpd.conf,windows中對應的目錄是 c wamp bin apache apache2.4.4 conf httpd.conf 把loadmodule headers module modules mod headers.so 前面的注...