跨域应该来说是目前前后端分离场景经常要用到的需求了。
这里不做过多的介绍了,直接给出nginx解决跨域的配置文件。
虚拟主机配置如下:
server {
#端口
listen 80;
# 接口常用的前缀,也是接口需要跨域配置
location /api{
if ($request_method = 'OPTIONS') {
add_header Access-Control-Allow-Origin '*';
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS, PUT, DELETE';
add_header Access-Control-Allow-Headers 'Accept,Referer,Sec-Fetch-Dest,User-Agent,x-crsf-token,token,OPENID,Content-Type,Authorization';
return 204;
}
# 这里可以加上允许所有头"*",也可以分开配置允许哪些请求method
#add_header Access-Control-Allow-Origin '*';
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS, PUT, DELETE';
add_header Access-Control-Allow-Headers 'Accept,Referer,Sec-Fetch-Dest,User-Agent,x-crsf-token,token,OPENID,Content-Type,Authorization';
}
# 这里不需要配置跨域
location / {
root /data/www/yxjc123;
}
}
重启我们的nginx服务,查看效果: