请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

nginx 子路径部署 多个前端单页应用

重定向那里 有部分前缀 需要跳转到主页 这样写会不会太繁琐了 这段nginx有什么优化空间吗

server {
    listen 80;
    server_name test-wx-h5.example.com;
    root /home/admin/apps/wx-h5-dd/;
    index index.html index.htm;
    underscores_in_headers on;


    # 重定向  精准匹配
    location = / {
        rewrite ^(.*)$ /ml/user/campList redirect;
    }
      location = /ml/ {
        rewrite ^(.*)$ /ml/user/campList redirect;
    }
    location = /ml-class/ {
        rewrite ^(.*)$ /ml/user/campList redirect;
    }
    location = /ml {
        rewrite ^(.*)$ /ml/user/campList redirect;
    }
    location = /ml-class {
        rewrite ^(.*)$ /ml/user/campList redirect;
    }


    # 子路径
    location ^~ /ml {
        root /home/admin/apps/wx-h5-dd/;
        try_files $uri $uri/ /ml/index.html;
    }
    location ^~ /ml-class {
        root /home/admin/apps/wx-h5-dd/;
        try_files $uri $uri/ /ml-class/index.html;
    }


    # 接口代理
    location /kb/ {
        proxy_pass http://127.0.0.1:7070/;
    }
  
    access_log /alidata/log/nginx/access/example.com.log access;
}

正在回答 回答被采纳积分+3

1回答

Jeson 2019-07-14 22:24:20

   location = /ml-class {
       rewrite ^(.*)$ /ml/user/campList redirect;
   }
   location ^~ /ml-class {
       root /home/admin/apps/wx-h5-dd/;
       try_files $uri $uri/ /ml-class/index.html;
   }

这两个location都匹配到一个路径了吧,为什么要这么写?

0 回复 有任何疑惑可以回复我~
  • 提问者 leon66 #1
    第一个是精确匹配/ml-class  当前端页面访问这个路径 就跳转到首页;
    
    第二个以/ml-class 开头的路径都指向某一个前端单页应用。
    回复 有任何疑惑可以回复我~ 2019-07-18 22:51:16
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信