您好,登錄后才能下訂單哦!
這篇文章主要介紹“Vue項(xiàng)目打包及部署實(shí)例分析”的相關(guān)知識(shí),小編通過實(shí)際案例向大家展示操作過程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“Vue項(xiàng)目打包及部署實(shí)例分析”文章能幫助大家解決問題。
npm run build 打包項(xiàng)目后,出現(xiàn)dist文件夾,dist文件夾下的東西就是需要部署的項(xiàng)目。
index.html頁面出現(xiàn)一片空白,右鍵檢查network發(fā)現(xiàn)一堆錯(cuò)誤。
解決:沒有修改config配置文件,如果直接打包,系統(tǒng)默認(rèn)的是’/’(根目錄),而不是’./’(當(dāng)前目錄),從而導(dǎo)致路徑不對(duì),頁面加載不出來。
需要自己在項(xiàng)目的根目錄下手動(dòng)建一個(gè)配置文件并添上以下代碼:然后在重新打包一次就可以了。
module.exports = { publicPath: ‘./' }
當(dāng)然我是這么弄得看得高大尚一點(diǎn):
module.exports = { // 基本路徑 baseURL已經(jīng)過時(shí) publicPath: './', // 輸出文件目錄 outputDir: 'dist', // eslint-loader 是否在保存的時(shí)候檢查 lintOnSave: true, // use the full build with in-browser compiler? // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only // compiler: false, // webpack配置 // see https://github.com/vuejs/vue-cli/blob/dev/docs/webpack.md chainWebpack: () => {}, configureWebpack: () => {}, // vue-loader 配置項(xiàng) // https://vue-loader.vuejs.org/en/options.html // vueLoader: {}, // 生產(chǎn)環(huán)境是否生成 sourceMap 文件 productionSourceMap: true, // css相關(guān)配置 css: { // 是否使用css分離插件 ExtractTextPlugin extract: true, // 開啟 CSS source maps? sourceMap: false, // css預(yù)設(shè)器配置項(xiàng) loaderOptions: {}, // 啟用 CSS modules for all css / pre-processor 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, // 是否啟用dll // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#dll-mode // dll: false, // PWA 插件相關(guān)配置 // see https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa pwa: {}, // webpack-dev-server 相關(guān)配置 // devServer: { // open: process.platform === 'darwin', // disableHostCheck: true, // host: 'www.test.com',//如果是真機(jī)測(cè)試,就使用這個(gè)IP // port: 1234, // https: false, // hotOnly: false, // before: app => {} // }, // 第三方插件配置 pluginOptions: { // ... } }
vue-router總共有三種模式。
對(duì)于我解決辦法:將router中的index.js 中的mode: "history"注釋掉,然后再重新打包即可。
其實(shí)到這一步就完成了,可氣的是:我打開index.html發(fā)現(xiàn)主頁有一些圖文沒有加載出來,查看發(fā)現(xiàn):
下載(可以下載win版本適應(yīng)一下):
雙擊nginx.exe啟動(dòng)
打開cmd命令窗口,切換到nginx解壓目錄下,輸入命令 nginx.exe 或者 start nginx
命令環(huán)境(配置)
nginx -s stop 停止 不保存信息
nginx -s quit 停止 保存信息
nginx -s reload 重啟
nginx -v 查看版本
查看是否成功,默認(rèn)80端口
start nginx 啟動(dòng)
將dist文件下的代碼+文件復(fù)制到http里面,然后再打開發(fā)現(xiàn)項(xiàng)目運(yùn)行正常!如果Http跨域錯(cuò)誤請(qǐng)看第四步,正常請(qǐng)略過。
(目前nginx還只是靜態(tài)服務(wù)器而已,有些是需要跨域的)
\conf下nginx.conf中
server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } #正向代理 location /api{ proxy_pass http://239.3454(寫你的后端請(qǐng)求) } }
其中l(wèi)ocation下的 html;如果是將dist文件復(fù)制進(jìn)去,那么location下的 html改為 html/dist
1、查看服務(wù)器是屬于centos還是Ubuntu
2、yum install -y redhat-lsb(有的話就不需要安裝)lsb_release -a (查看)
1、安裝yum類似npm,下載模塊以及模塊的依賴(安裝nginx之前的依賴)
yum -y install pcre* yum -y install openssl*
2、下載wget類似于迅雷下載文件
yum install wget
3、下載nginx
下載到對(duì)應(yīng)目錄(一般是在usr下的local下)
wget http://nginx.org/download/nginx-1.17.9.tar.gz
4、解壓
tar -zxvf nginx-17.9
5、編譯安裝
./ configure
表示成功!
最后輸入: make -j4 && make install
會(huì)產(chǎn)生一個(gè)nginx文件所有的操作都在這個(gè)里面
6、進(jìn)入nginx文件里面sbin
測(cè)試是否安裝成功 ./nginx -t
./nginx啟動(dòng)
報(bào)錯(cuò)
解決:
lsof -i :80查看被什么程序占用,使用killall -9 nginx 殺掉進(jìn)程。
7、部署項(xiàng)目
使用MobaXterm上傳打包好的Vue項(xiàng)目到sbin文件下
使用 (unzip 名字)解壓
PS:zip -q -r 壓縮包名.zip進(jìn)行壓縮 到html文件夾下
最后cd進(jìn)入nginx文件下的sbin輸入./nginx -s reload
關(guān)于“Vue項(xiàng)目打包及部署實(shí)例分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。