美文网首页
前端利用nginx解决js跨域的问题

前端利用nginx解决js跨域的问题

作者: 牧馬放飏 | 来源:发表于2019-01-06 19:00 被阅读22次

1.安装nginx

参考:https://www.jianshu.com/p/fabf07468e33

2.修改nginx.conf文件

    server {
        listen       8090;
        server_name  localhost;

        #charset koi8-r;
        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        # 代理的关键
        location /apis {
            # 添加访问目录为/apis的代理配置
            rewrite  ^.+apis/?(.*)$ /$1 break;
            include  uwsgi_params;
            proxy_pass   http://bms.test.com;
        }

    }

配置解释:

  • 由配置信息可知,我们让nginx监听localhost的8090端口,所有请求访问都是经过localhost的8090端口进行访问。

  • 我们特殊配置了一个/apis目录的访问,并且对url执行了重写,最后使以/apis开头的地址都转到“http://bms.test.com”进行处理。

  • rewrite ^/apis/(.*)$ /$1 break;代表重写拦截进来的请求,并且只能对域名后边以“/apis”开头的起作用。例如http://bms.test.com?x=1重写。只对/apis重写。rewrite后面的参数是一个简单的正则 ^/apis/(.*)$ ,$1代表正则中的第一个(),$2代表第二个()的值,以此类推。break代表匹配一个之后停止匹配。

3.重新启动nginx

sudo nginx -s reload

相关文章

网友评论

      本文标题:前端利用nginx解决js跨域的问题

      本文链接:https://www.haomeiwen.com/subject/dposrqtx.html