首页 > nginx 如何设置 网站 移动网站 api 配置?

nginx 如何设置 网站 移动网站 api 配置?

我用nodejs 的express 搭建的 网站在路由/pc下面 移动网站在/m 下面 然后api数据请求都在路由/api下面

例如www.xxx.com 域名指向根目录/ 那么 www.xxx.com/pc 就是网站 www.xxx.com/m 就是移动网站, 其中ajax请求数据都是请求到/api的路由下面

现在我要 做到 www.xxx.com 是pc网站 直接指向到/pc目录, 访问www.xxx.com就是pc网站, 不要之前的www.xxx.com/pc的路径了. 同理 m.xxx.com 指向/m目录 就是移动网站,

这就遇到一个问题, api都无法访问了, 因为访问www.xxx.com时 ajax请求的数据路由就是/pc/api 路径就不对了,不是/api了

请问nginx 如何配置能做到该需求, 不想给api 单独设置一个域名 例如单独设置api.xxx.com 因为这样就不是一个域了,需要跨域很麻烦.


写个location不就好了,先处理/api


1.跨域没有你想的那么麻烦,设定cors头或者退一步,因为你的主域是没有跨的,用iframe跨域就行了;
2.对nginx的设置,每个虚拟服务器设置个proxy_pass 就行了

server{
    server_name  www.xxx.com;
    location /{
        proxy_pass http://your_express_url;
    }
}

server{
    server_name m.xxx.com;
    location /{
        proxy_pass http://your_express_url/m;
    }
    location /api{
         proxy_pass http://your_express_url;
    }
}
【热门文章】
【热门文章】