首页 > 编程知识 正文

vue部署到nginx服务器 静态资源访问,vue.js打包部署

时间:2023-05-05 22:01:10 阅读:269868 作者:4672

vue项目开发好之后需要部署到服务器上进行外网访问,本篇主要介绍vue项目开发环境部署到Nginx服务器外网进行访问

部署流程:本地vue项目进行打包成静态文件,将静态文件放在Nginx服务上,配置Nginx,指定的url转发至index.html,通过Nginx反向代理代替vue.cfg.js中配置的代理

1.vue配置文件vue.cfg.js

const path = require('path')module.exports = { /** 区分打包环境与开发环境 * process.env.NODE_ENV==='production' (生产环境) * process.env.NODE_ENV==='development' (开发环境) * baseUrl: process.env.NODE_ENV==='production'?"https://cdn.didabisai.com/front/":'front/', */ publicPath : "./", // 构建好的文件输出到哪里 outputDir: "dist", // where to put static assets (js/css/img/font/...) // 是否在保存时使用‘eslint-loader’进行检查 // 有效值: true | false | 'error' // 当设置为‘error’时,检查出的错误会触发编译失败 lintOnSave: true, // 使用带有浏览器内编译器的完整构建版本 // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only runtimeCompiler: false, // babel-loader默认会跳过`node_modules`依赖. // 通过这个选项可以显示转译一个依赖 transpileDependencies: [ /* string or regex */ ], // 是否为生产环境构建生成sourceMap? productionSourceMap: false, // 调整内部的webpack配置. /快三大小单双稳赚买法vue项目开发好之后需要部署到服务器上进行外网访问,本篇主要介绍vue项目开发环境部署到Nginx服务器外网进行访问

部署流程:本地vue项目进行打包成静态文件,将静态文件放在Nginx服务上,配置Nginx,指定的url转发至index.html,通过Nginx反向代理代替vue.cfg.js中配置的代理

1.vue配置文件vue.cfg.js

const path = require('path')module.exports = { /** 区分打包环境与开发环境 * process.env.NODE_ENV==='production' (生产环境) * process.env.NODE_ENV==='development' (开发环境) * baseUrl: process.env.NODE_ENV==='production'?"https://cdn.didabisai.com/front/":'front/', */ publicPath : "./", // 构建好的文件输出到哪里 outputDir: "dist", // where to put static assets (js/css/img/font/...) // 是否在保存时使用‘eslint-loader’进行检查 // 有效值: true | false | 'error' // 当设置为‘error’时,检查出的错误会触发编译失败 lintOnSave: true, // 使用带有浏览器内编译器的完整构建版本 // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only runtimeCompiler: false, // babel-loader默认会跳过`node_modules`依赖. // 通过这个选项可以显示转译一个依赖 transpileDependencies: [ /* string or regex */ ], // 是否为生产环境构建生成sourceMap? productionSourceMap: false, // 调整内部的webpack配置. // see https://github.com/vuejs/vue-cli/blob/dev/docs/webpack.md chainWebpack: () => {}, configureWebpack: () => {}, // CSS 相关选项 css: { // 将组件内部的css提取到一个单独的css文件(只用在生产环境) // 也可以是传递给 extract-text-webpack-plugin 的选项对象 extract: true, // 允许生成 CSS source maps? sourceMap: false, // pass custom options to pre-processor loaders. e.g. to pass options to // sass-loader, use { sass: { ... } } loaderOptions: {}, // Enable CSS modules for all css / pre-processor files. // This option does not affect *.vue files. modules: false }, // use thread-loader for babel & TS in production build // enabled by default if the machine has more than 1 cores parallel: require("os").cpus().length > 1, // PWA 插件相关配置 // see https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa pwa: {}, // configure webpack-dev-server behavior devServer: { open: process.platform === "darwin", disableHostCheck: false, host: "0.0.0.0", port: 8088, https: false, hotOnly: false, // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#configuring-proxy https://1w889d7618.iok.la:25826/cv proxy: { '/api': { // search为转发路径 target: 'http://localhost:8080/default', // 目标地址 ws: true, // 是否代理websockets changeOrigin: true // 设置同源 默认false,是否需要改变原始主机头为目标URL, } },// string | Object before: app => {} }, // 第三方插件配置 pluginOptions: { // ... }}; #执行打包命令##根据vue配置文件会在本地根目录生成一个dist文件,该文件为vue打包好之后静态文件npm run build


2.使用xshell连接上Linux服务器

##安装Nginx,建议直接通过yum安装,通过解压安装文件配置较为复杂sudo yum install -y nginx##启动Nginxsudo systemctl start nginx.service##开机自启动sudo systemctl enable nginx.service##开放80端口firewall-cmd --permanent --zone=public --add-port=80/tcp##重启防火墙firewall-cmd --reload

3.通过xftp将打包好的静态文件放到服务器上面去,注意,放上去的文件若非root用户,需要赋予当前用户文件访问权限,否则nginx访问时会出现403无访问权限

##编辑nginx配置文件vi /etc/nginx/nginx.conf#进入nginx配置文件location /system-admin-web { root /home/web/;#3.dist文件的位置(我是直接放在/home/web/目录下了).注意之前dist文件必须要重命名为system-admin-web,否则服务 try_files $uri $uri/ /index.html; #4.重定向,内部文件index.html文件}location /api { #配置请求转发 proxy_pass http://10.166.0.109:9001/api;}

直接访问http://localhost/system-admin-web/

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。