nginx 反向代理解决跨域问题

这是我的请求代码

            $.ajax({
                url:"/apis/h5/policy.do",
                type:"post",
                data:{pageSize:7},
                success:function(data){
                    console.log(data)
                }
            })

这是我的nginx配置

 server {
        listen       8024;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
             proxy_pass http://localhost:8024;
        }
        location /apis {
            rewrite  ^.+apis/?(.*)$ /$1 break;
            include  uwsgi_params;
               proxy_pass   http://wap.zhuogan.cn/smartApp;
           }
        
    }
    

浏览器保存如下图
浏览器报错如下

图片描述

阅读 1.7k
2 个回答

nginx不熟,不过也发现了问题

测了一下,你的接口应该是http://wap.zhuogan.cn/smartApp/h5/policy.do可以访问

所以你在代理的时候不能把apis带入进去,或者带进去的时候在转发的时候把apis截取掉

具体怎么改你可以多试一下

你Nginx里监听的是80端口且Host为localhost的请求,但是你在浏览器里是直接打到8020端口并且也没加主机名的,根本没走Nginx。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题