Vue 项目 Nginx 部署在子目录
Vue 项目:vue 版本 2.6.10, 用 vue-cli 一键生成的 vue 项目,自动集成了 vue.config.js 的。
环境变量配置
在环境变量中配置子目录名称:
VUE_APP_BASE_PATH = '/my-app/'
修改 vue.config.js
vue.config.js 文件中作出 publicPath 相应改动:
module.exports = {
publicPath: process.env.VUE_APP_BASE_PATH,
outputDir: 'dist',
assetsDir: 'static',
}
修改路由
路由处做修改,添加 base
const router = new Router({
mode: 'history',
base: process.env.VUE_APP_BASE_PATH,
scrollBehavior: () => ({ y: 0 }),
routes: routerMap
})
至此,Vue 项目的修改就 OK 了,dev 环境下运行项目,就可以看到 路由中已经添加了 /my-app/ 前缀。
如:http://localhost:8080/my-app/home
Nginx 配置
server {
server_name test.host.com;
req_status server_host;
access_log /home/srv/log/access-manti.log nisp;
error_log /home/srv/log/error-manti.log;
include conf.d/Office-Gateway-IPs;
location /my-app {
proxy_pass http://127.0.0.1:9528;
}
}
相关文章