首页 > 运维 > nginx > nginx如何解决请求跨域问题

nginx如何解决请求跨域问题

王林
发布: 2020-11-10 16:18:17
转载
3677 人浏览过

nginx如何解决请求跨域问题

一般前端的请求是 网址都是 域名(端口 访问的是80 或者 443),而后端的服务是 8080 端口,这个时候你请求http://106.520.156.210:8080/vic-indoor-pc/selectAllUser就会报跨域问题了(端口不同)。所以我在每个请求加了统一的前缀 /api ,请求变成了 http://106.520.156.210/api/vic-indoor-pc/selectAllUse (端口必须和前端一样)。

前端发送请求:

http://106.520.156.210/api/vic-indoor-pc/selectAllUse
登录后复制

Nginx转发变成了:

http://106.520.156.210:8080/vic-indoor-pc/selectAllUse
登录后复制

经过Nginx 这样转发,对于浏览器来说,访问的就是 80 ,但是请求的其实是 8080。rewrite "^/api/(.*)$" /$1 break; 这句就是把 /api 给删除掉了然后 转发到了 http://106.520.156.210:8080/

                location /api/vic-indoor-pc {

                        proxy_set_header Client-IP      $Remote_addr;
                        proxy_pass http://106.520.156.210:8080/;
                        rewrite "^/api/(.*)$" /$1 break; 

                }
登录后复制

我还碰到了下载阿里OSS 存储跨域的问题,也是这么解决的。(加上统一前缀)

                location /img/report {

                        proxy_set_header Client-IP      $Remote_addr;
                        proxy_pass https://bilibili.oss-cn-shenzhen.aliyuncs.com/;
                        rewrite "^/img/(.*)$" /$1 break;
                }
登录后复制

相关推荐:nginx教程

以上是nginx如何解决请求跨域问题的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
重启nginx出错
来自于 1970-01-01 08:00:00
0
0
0
server - Nginx配置webapp问题
来自于 1970-01-01 08:00:00
0
0
0
Nginx的default.conf问题
来自于 1970-01-01 08:00:00
0
0
0
centos7 - NGINX出现异常
来自于 1970-01-01 08:00:00
0
0
0
uwsgi - 如何用nginx关联django应用
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板