vue history須要nginx或者其餘方式配置一下才可正確訪問,不然路由跳轉以後刷新一下便會404 具體緣由vue-router官網有說明,在此很少說css
最近遇到的問題是上了一個小的項目,須要放在更深層次的目錄下,上到測試環境 作了官網提到的nginx配置發現不行,以後查閱了一些博客資料,發現都沒有一個特別好的方案。最終,個人解決方案以下html
nginx配置以下vue
server { listen 443 ; server_name m; root html/mobile; location / { index index.html index.htm; try_files $uri $uri/ /auth/index.html; } }
vue router 配置webpack
// 路由配置 const RouterConfig = { base: "/auth/", mode: 'history', routes: routers };
該項目是用的vue-cli2 因此只須要修改config 裏面的index.js的build部分nginx
webpack 配置修改web
build: { // Template for index.html index: path.resolve(__dirname, '../dist/auth/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'auth/static', assetsPublicPath: '/', /** * Source Maps */ productionSourceMap: false, devtool: '#source-map', productionGzip: false, productionGzipExtensions: ['js', 'css'], bundleAnalyzerReport: process.env.npm_config_report }
最終項目地址爲 m.xxx.com/auth/vue-router