一、配置vue打包引數
假設springboot的context-path為/ ,即根路徑,那麼我需要為靜態資源分配一個路由,這裡以pages為例,前端vue.config.js配置如下:
publicPath: '/pages/',
outputDir: 'dist',
assetsDir: 'static',
二、springboot系列配置與處理
將context-path配置為根路徑/,並設定shiro等許可權框架對pages許可權攔截的忽略,基於diboot低程式碼開發平臺的專案配置如下:
server.servlet.context-path=/ diboot.iam.anon-urls=/pages/**
- 將前端打包好的dist中的資料夾和檔案都放到 springboot專案的 resource/static/pages 目錄下,如下:
- 訪問 localhsot:8080/pages/index.html 即可成功
三、訪問路徑優化:
上述方案每次必須訪問pages的路由才可以訪問到,那麼我們是否可以重定向到這裡呢,是可以的。
新增以下controller程式碼,可從根路徑自動重定向到上述路徑:
@RestController public class RootRedirectController { @GetMapping("/") public void redirect(HttpServletResponse response) throws Exception { response.sendRedirect("/pages/index.html"); } }
新增許可權框架對根路徑忽略許可權檢查,基於diboot低程式碼開發平臺的專案配置如下:
diboot.iam.anon-urls=/,/pages/**