摘要:實現過程把下面的配置保存成一個文件,例如,引入到的代理配置中去。再通過訪問這臺機器上的地址,就能跨域訪問下所有非權限控制的資源和數據了。
實現過程
把下面的配置保存成一個文件,例如:nginx_cors,引入到Nginx的代理配置中去。
if ($request_method = "OPTIONS") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; add_header "Access-Control-Max-Age" 1728000; add_header "Content-Type" "text/plain charset=UTF-8"; add_header "Content-Length" 0; return 204; } if ($request_method = "GET") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; } if ($request_method = "POST") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; } if ($request_method = "PUT") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; } if ($request_method = "PATCH") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; } if ($request_method = "DELETE") { add_header "Access-Control-Allow-Origin" "*"; add_header "Access-Control-Allow-Methods" "GET, POST, PUT, PATCH, DELETE, OPTIONS"; add_header "Access-Control-Allow-Headers" "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"; }
location ~* ^/ { proxy_pass http://www.jd.com; access_log /var/log/nginx/jd-access.log main; include /etc/nginx/nginx_cors; max_ranges 0; }
再通過訪問Nginx這臺機器上的地址,就能跨域訪問www.jd.com下所有非權限控制的資源和數據了。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/82535.html
摘要:二跨域解決方案原理利用標簽沒有跨域限制的漏洞,網頁可以得到從其他來源動態產生的數據。使用反向代理實現跨域,是最簡單的跨域方式。 前言 前后端數據交互經常會碰到請求跨域,什么是跨域,以及有哪幾種跨域方式,這是本文要探討的內容。 本文完整的源代碼請猛戳github博客,紙上得來終覺淺,建議動手敲敲代碼 一、什么是跨域? 1.什么是同源策略及其限制內容? 同源策略是一種約定,它是瀏覽器最核心...
摘要:二跨域解決方案原理利用標簽沒有跨域限制的漏洞,網頁可以得到從其他來源動態產生的數據。使用反向代理實現跨域,是最簡單的跨域方式。 前言 前后端數據交互經常會碰到請求跨域,什么是跨域,以及有哪幾種跨域方式,這是本文要探討的內容。 本文完整的源代碼請猛戳github博客,紙上得來終覺淺,建議動手敲敲代碼 一、什么是跨域? 1.什么是同源策略及其限制內容? 同源策略是一種約定,它是瀏覽器最核心...
摘要:接下來我們開始編寫自己的配置文件,實現指向的代理,并在請求中添加進行鑒權,同時在響應中添加跨域頭,以滿足跨域需求。在上面的配置文件中,用我們從創建的代替,用需要實現訂閱的郵件列表的代替,而則是的后綴數字。 tl;dr nginx 既靈活方便,又功能豐富,可以幫助我們實現添加跨域頭、URL 重寫以及隱藏敏感信息等功能。本文介紹在使用 MailChimp進行郵件營銷中遇到的一個普遍問題,分...
摘要:接下來我們開始編寫自己的配置文件,實現指向的代理,并在請求中添加進行鑒權,同時在響應中添加跨域頭,以滿足跨域需求。在上面的配置文件中,用我們從創建的代替,用需要實現訂閱的郵件列表的代替,而則是的后綴數字。 tl;dr nginx 既靈活方便,又功能豐富,可以幫助我們實現添加跨域頭、URL 重寫以及隱藏敏感信息等功能。本文介紹在使用 MailChimp進行郵件營銷中遇到的一個普遍問題,分...
閱讀 1998·2021-09-30 09:53
閱讀 1841·2021-09-24 09:48
閱讀 1755·2019-08-30 14:01
閱讀 2170·2019-08-29 18:35
閱讀 1249·2019-08-26 18:27
閱讀 2979·2019-08-26 12:12
閱讀 942·2019-08-23 17:16
閱讀 932·2019-08-23 15:31