NGINX配置跨域CORS支援

NGINX配置跨域CORS支援

NGINX配置跨域CORS支援

這兩天在搞酷瓜雲網課的 app,採用 uni-app 做全端支援,現學現賣,目前算是入門了。

在做 H5 的時候難免會跨域請求後端 API,雖然用 HBuilder 內建的瀏覽器不會有跨域問題(這個應該是做了內部處理),但是那個內建瀏覽器真尼媽坑爹,過一會就會卡死,導致 HBuilder 無響應,殺程序也是無濟於事,只能重啟,重複幾次誰受的了。後來發現用外部的瀏覽器不會有這個問題,但是又面臨跨域。

這裡採用配置 nginx 來支援 CORS,這樣的話就不用動任何程式碼了。正確的配置如下:

location ~ \。php$ { if ($request_method = ‘OPTIONS’) { add_header ‘Access-Control-Allow-Origin’ ‘*’ always; add_header ‘Access-Control-Allow-Methods’ ‘GET,POST,OPTIONS,PUT,DELETE’ always; add_header ‘Access-Control-Allow-Headers’ ‘*’ always; add_header ‘Access-Control-Max-Age’ 1728000 always; add_header ‘Content-Length’ 0; add_header ‘Content-Type’ ‘text/plain; charset=utf-8’; return 204; } if ($request_method ~* ‘(GET|POST|DELETE|PUT)’) { add_header ‘Access-Control-Allow-Origin’ ‘*’ always; }}

PS:網上很多都是採集,貼上複製的垃圾文章,完全沒有去驗證的,碰到了會浪費還多時間,還會把你帶坑裡去。