。。。简单粗暴。。。
vue配置
项目a
vite.config.ts
// https://vitejs.dev/config/
export default ({ command, mode }: ConfigEnv): UserConfig => {return {// 重要: 配置别名base: '/a/',// 其他配置}
}
router/index.ts
// 创建路由实例
const router = createRouter({// createWebHashHistory URL带#,createWebHistory URL不带#// 重要: 配置别名history: createWebHistory('/a/'), strict: true,routes: remainingRouter as RouteRecordRaw[],scrollBehavior: () => ({ left: 0, top: 0 })
})
项目b
vite.config.ts
// https://vitejs.dev/config/
export default ({ command, mode }: ConfigEnv): UserConfig => {return {// 重要: 配置别名base: '/b/',// 其他配置}
}
router/index.ts
// 创建路由实例
const router = createRouter({// createWebHashHistory URL带#,createWebHistory URL不带#// 重要: 配置别名history: createWebHistory('/b/'), strict: true,routes: remainingRouter as RouteRecordRaw[],scrollBehavior: () => ({ left: 0, top: 0 })
})
然后项目打包
。。。。。。
nginx配置
html接口
html/a
html/b
conf配置
server {listen 8090;listen [::]:8090;server_name www.abc.com;charset utf-8;# 访问 xx.xx.xx.com/bb, bb=vue项目的别名, nginx中的文件夹也是bblocation / { ## 前端项目root /usr/local/nginx/html;index index.html index.htm;}location ^~/a/ {alias /usr/local/nginx/html/a/;index index.html index.htm;try_files $uri $uri/ /a/index.html;}location ^~/b/ {alias /usr/local/nginx/html/b/;index index.html index.htm;try_files $uri $uri/ /b/index.html;}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}
}
最终访问
http://www.abc.com:8090/a
http://www.abc.com:8090/b