nginx 二级域名如何映射为一级域名url

vue-cli项目:假如顶级域名为test.com,host中配置127.0.0.1
客户A localhost:8000/#/users/a 可以查看与A相关的数据
客户B localhost:8000/#/users/b 可以查看与B相关的数据
请问nginx如何配置可实现 a.test.com:8000即可查看A相关数据,b.test.com:8000即可查看B相关数据...

阅读 95
评论
    2 个回答
    吴问涵
    • 3
    • 新人请关照

    配置泛解析

    server_name ~^(?<subdomain>.+).yourdomain.com$;

    然后 rewrite

    rewrite ^/(.*)$ /users/$subdomain/$1;

    评论 赞赏
      李通
      • 114

      在nginx中配置2个server,使用2个server_name

      server {
        listen 80;
        server_name a.test.com;
        index index.htm index.html;
        location / {
          proxy_pass http://localhost:8000;
        }
      }
      
      server {
        listen 80;
        server_name b.test.com;
        index index.htm index.html;
        location / {
          proxy_pass http://localhost:8000;
        }
      }

      配置完成后,nginx会读取http客户端(浏览器)发送的http请求头中的Host转发到后端

      该答案已被忽略,原因:无意义的内容 - 赞、顶、同问等毫无意义的内容

      评论 赞赏
        撰写回答

        登录后参与交流、获取后续更新提醒