Vue.js baseUrl /m 如何和nginx 里面匹配--后续

81 阅读1分钟
     location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
          {
            expires      30d;
          }

          # PC 端 请求
          location ~* ^/pc/.*\.(js|css)$ 
          {
             root /www/server/xxx/frontend/pc;  # 使用 PC 根路径
             expires 12h;
          }

           # 移动端 请求
          location ~* ^/m/.*\.(js|css)$ 
          {
            root /www/server/xxx/frontend;  # 使用移动端根路径
            expires 12h;
          }

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } 这段代码会导致静态文件返回404。因为前端是带有路径/m编译的。nginx先根据这段匹配,不管是pc还是m都会进入这一段,会有问题。所以应该改成下面的

# PC 端 请求
          location ~* ^/pc/.*\.(js|css|gif|jpg|jpeg|png|bmp|swf)$ 
          {
             root /www/server/xxx/frontend/pc;  # 使用 PC 根路径
             expires 12h;
          }

           # 移动端 请求
          location ~* ^/m/.*\.(js|css|gif|jpg|jpeg|png|bmp|swf)$ 
          {
            root /www/server/xxx/frontend;  # 使用移动端根路径
            expires 12h;
          }

删除第一段匹配