我写了一个vue + webpack项目,它在webpack-dev-middleware中工作正常。现在我想用nginx来部署它。我所做的是编写一个webpack.build.config.js并将所有文件捆绑到一个dist文件夹中。然后,我只需将dist文件夹复制到nginx html文件夹中,并在nginx.conf中指定索引。然而,它有一个错误说:如何使用ngnix在生产中提供webpack构建文件
[VUE警告]:无法装入组件:模板或渲染功能不是 定义。 (在根实例中找到)
我是devops /后端的新手,与整体构建或部署过程相当混淆。 webpack-dev-server或nodejs仍然需要在生产环境中使用吗?我的生产环境后端是nginx/PHP和IIS/.Net,现在它根本没有安装节点。
我的nginx.conf是
location/{
root html/dist;
index index.html index.htm;
}
而且webpack.build.config.js是
var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var public_dir = "components";
//var ModernizrWebpackPlugin = require('modernizr-webpack-plugin');
module.exports = {
entry: [
path.join(__dirname,'./index.js')
],
output: {
path: path.join(__dirname, '/dist/'),
filename: '[name].js',
publicPath: '/'
},
devtool: 'eval-source-map',
plugins: [
new webpack.optimize.CommonsChunkPlugin('common.js'),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin(),
new webpack.optimize.AggressiveMergingPlugin(),
new HtmlWebpackPlugin({
filename: 'index.html',
template: path.resolve(__dirname, 'index.html'),
inject: true
})
],
resolve: {
root: [path.resolve('./components')],
extensions: ['', '.js', '.css']
},
module: {
loaders: [
]
}
};
当构建我跑
的WebPack -p --config。 /webpack.build.config.js
对于我使用ngnix作为而PM2代理同一案件(http://pm2.keymetrics.io /)管理nodejs服务器进程。 – ArkadyB
@ArkadyB请进一步详细说明你如何使用pm2。例如,您使用什么命令将其部署到生产中? –
@NIMRODMAINA,正如PM2网站上说的那样,它是nodejs应用程序的生产过程管理器,因此您可以使用任何你想要的工具构建应用程序 - webpack等,并使用pm2在后台运行你的应用程序。请参阅官方网站获取更多信息 - http://pm2.keymetrics.io/ – ArkadyB