Nginx 實現AJAX跨域請求

2021-06-28 10:26:33 字數 1558 閱讀 2186

更多:

最新的w3c標準裡是這麼實現http跨域請求的,

cross-origin resource sharing

簡單來說,就是跨域的目標伺服器要返回一系列的headers,通過這些headers來控制是否同意跨域。

這些headers有:

在 request 包和 response 包中都有一些。

其中最敏感的就是 access-control-allow-origin 這個 header, 他是w3c標準裡用來檢查該跨域請求是否可以被通過。 (access control check)

所以如果需要跨域,解決方法就是在資源的頭中加入 access-control-allow-origin 指定你授權的域. 我這裡無所謂,就指定星號 * , 任何域都可以訪問我的資源。

具體操作方法, 可以通過不同入口來控制:

一、php**控制:

<?

phpheader

("access-control-allow-origin: *"

);?>

二、html頭控制:

三、nginx配置:
location 

/

在網上看到有人會在nginx.conf加三句話:
#授權從other.subdomain.com的請求

add_header

'access-control-allow-origin'

'';#當該標誌為真時,響應於該請求是否可以被暴露

add_header

'access-control-allow-credentials'

'true'

;#指定請求的方法,可以是get,post等

add_header

'access-control-allow-methods'

'get'

;

不過我自己測試了一下,是不需要的。另如果要指定特定的網域名稱,只要修改*即可,一般都是開放站點的二級網域名稱。

Nginx 實現AJAX跨域請求

ajax從乙個域請求另乙個域會有跨域的問題。那麼如何在nginx上實現ajax跨域請求呢?要在nginx上啟用跨域請求,需要新增add header access control 指令。如下所示 1 2 3 4 5 6 7 8 location 注釋如下 第一條指令 授權從url的請求,也可以 ad...

nginx 實現 ajax 跨域請求

原文 ajax從乙個域請求另乙個域會有跨域的問題。那麼如何在nginx上實現ajax跨域請求呢?要在nginx上啟用跨域請求,需要新增add header access control 指令。如下所示 12 3456 78910 11location 釋如下 第一條指令 授權從other.subdo...

Nginx 實現AJAX跨域請求

在工作中遇到跨域請求的問題 ajax從乙個域請求另乙個域會有跨域的問題。那麼如何在nginx上實現ajax跨域請求呢?要在nginx上啟用跨域請求,需要新增add header access control 指令。如下所示 if request method options if request m...