Nginx解决资源跨域问题
程序员文章站
2022-07-10 12:44:26
...
解决方法:
- 进入nginx安装的目录,打开conf文件夹,使用命令vim nginx.conf 编辑,具体配置位置如下:
注意:
(1)本地新建静态资源测试的,所以定义了如下配置,正式环境无需处理。
location /public/img/{
root /usr/local/test_static_resource;
autoindex on;
}
(2)核心配置为:下图中”解决跨域配置”
2、具体脚本:
server {
#listen 8888;
listen 3003;
server_name localhost;
# 指定允许跨域的方法,*代表所有
add_header 'Access-Control-Allow-Origin' '*';
# 带cookie请求需要加上这个字段,并设置为true
add_header 'Access-Control-Allow-Credentials' 'true' ;
# 允许请求的方式
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
#表示请求头的字段动态获取
add_header'Access-Control-Allow-Headers''Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,Keep-Alive,X-Requested-With,Pragma,Cache-Control,If-Modifi ed-Since';
location =/{
proxy_pass http://127.0.0.1:8848;
# OPTIONS预检命令,预检命令通过时才发送请求
# 检查请求的类型是不是预检命令
if ($request_method = OPTIONS){
return 200;
}
}
location /public/img/{
root /usr/local/test_static_resource;
autoindex on;
}
3、运行结果:
上一篇: 宝塔 nginx配置跨域