配置
config
项目采用config
来管理项目的配置。更多文档
对应 config 目录如下:
├── config # 项目配置文件目录
├── default.js # 默认配置
├── development.js # 开发环境配置
└── log4js.js # log4js 配置项
default.js
默认配置。
//default.js
const log4js = require('./log4js')
module.exports = {
appName: "vue-ssr",
log4js: log4js,
staticHost: "", //http://static.cdn.com
staticPath: "/vue-static",
apiHost: "https://www.fastmock.site", //后端host
apiHost2: "http://10.114.41.200:8080" // http://10.114.41.200:8080
}
development.js
开发配置,在开发模式时,覆盖默认配置项。
log4js.js
log4js日志配置,更多参考log4js使用文档
//log4js.js
module.exports = {
appenders: {
console: {
type: 'console'
},
app: {
type: 'dateFile',
filename: `log/vue-ssr-admin`,
pattern: '-yyyy-MM-dd.log',
alwaysIncludePattern: true,
backups: 5,
maxLogSize: 10485760,
compress: true
}
},
categories: {
default: {
appenders: ['console', 'app'],
level: 'debug' // ['trace', 'debug', 'info', 'warn', 'error', 'fatal', 'mark']
}
},
pm2: true,
pm2InstanceVar: 'INSTANCE_ID'
}
app.config.js
应用的相关配置文件,包括webpack的差异化配置、请求代理配置
//app配置
const path = require('path')
const conf = require('./config/default')
const devConf = require('./config/development')
const isProd = process.env.NODE_ENV === 'production'
module.exports = {
staticHost: isProd ? conf.staticHost : devConf.staticHost,
staticPath: isProd ? conf.staticPath : devConf.staticPath,
//webpack的差异化配置
webpack: {
entry: {
app: path.join(__dirname, 'src/app.js'), // 入口
},
resolveAlias: {
// 自定义Alias设置
}
},
appPort: process.env.PORT,//主服务启动端口
//代理配置,可支持多个代理,key为前缀,命中后,会把前缀去掉,转发到代理服务器
proxy: {
'/fastApp': isProd ? conf.apiHost : devConf.apiHost,
'/coolApp': isProd ? conf.apiHost2 : devConf.apiHost2,
}
}