最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue項(xiàng)目Nginx子目錄部署(Vite和Vue-CLI)

 更新時(shí)間:2024年05月20日 09:10:39   作者:凌波漫步&  
本文主要介紹了Vue項(xiàng)目Nginx子目錄部署(Vite和Vue-CLI),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、序言

生產(chǎn)環(huán)境中Vue項(xiàng)目我們一般會(huì)部署在域名的子目錄下,在了解如何部署時(shí)我們先了解下Vue構(gòu)建相關(guān)的基礎(chǔ)知識。

首先Vue項(xiàng)目打包后其實(shí)就是個(gè)單頁應(yīng)用,這也是為什么第一次加載時(shí)會(huì)比較慢。

既然是單頁應(yīng)用,如果想在Nginx中指定前綴訪問靜態(tài)資源和文件,需要在打包構(gòu)建時(shí)配置base路徑,目前Vue使用的構(gòu)建工具有Vite(針對Vue3)還有Vue CLI(基于Webpack,針對Vue2)。

同時(shí)Vue-Router實(shí)例化時(shí)如果歷史記錄模式為HTML5模式,也需要指定路由的base路徑,不然資源會(huì)訪問失敗。

二、構(gòu)建工具配置

1、Vite打包配置

Vite目前是Vu3主流構(gòu)建工具,打包配置我們可以在vite.config.js中進(jìn)行修改,指定base配置即可,這里我們指定了base/easy-wealth/,也就是說所有的靜態(tài)資源都會(huì)帶上該前綴。

import {defineConfig} from 'vite';
import vue from '@vitejs/plugin-vue';
import legacy from '@vitejs/plugin-legacy';
import path from 'path';

// https://vitejs.dev/config/
export default defineConfig({
    base: '/easy-wealth/',
    plugins: [
        vue(),
        legacy({
            targets: ['defaults', 'not IE 11'],
        })
    ],
    resolve: {
        alias: {
            '@': path.resolve(__dirname, './src')
        }
    }
});

2、Vue CLI打包配置

Vue CLI目前已經(jīng)處于維護(hù)狀態(tài),一般老項(xiàng)目可能還在用它來開發(fā),Vue CLI打包時(shí)基于Webpack構(gòu)建。通過vue.config.js我們可以通過publicPath選項(xiàng)指定靜態(tài)資源的訪問前綴,配置如下:

module.exports = {
  publicPath: '/easy-wealth/',
  outputDir: 'dist',
  assetsDir: 'static',
  lintOnSave: process.env.NODE_ENV !== 'production'
 }  

通過上述配置,打包后我們會(huì)發(fā)現(xiàn)index.html文件里所有的靜態(tài)資源訪問路徑前都加上了/easy-wealth前綴。

在這里插入圖片描述

三、Vue-Router配置

目前Vue-Router支持3種歷史記錄模式,分別是Hash模式、Memory模式和HTML5模式。如果我們指定歷史記錄模式為HTML5模式,那么一定要指定路由的base路徑,不然頁面訪問會(huì)出現(xiàn)404。

const router = createRouter({
    history: createWebHistory('/easy-wealth/'),
    routes
});

export default router;

四、Nginx配置

在Nginx配置中,我們加了一項(xiàng)try_files回退路由配置,前面已經(jīng)說過Vue項(xiàng)目是單頁面應(yīng)用,這項(xiàng)配置看起來有點(diǎn)復(fù)雜,但也容易理解,舉個(gè)例子:

當(dāng)訪問http://test.com/easy-wealth/hwc時(shí),Nginx首先會(huì)去h5/easy-wealth/dist目錄下找名為hwc的目錄,以及該目錄下的文件,如果都沒有找到,則回退訪問/easy-wealth/index.html,這時(shí)Nginx會(huì)在h5/easy-wealth/dist下找到名為index.html的文件。

location /easy-wealth {
   alias h5/easy-wealth/dist;
   try_files $uri $uri/ /easy-wealth/index.html;
}

到此這篇關(guān)于Vue項(xiàng)目Nginx子目錄部署(Vite和Vue-CLI)的文章就介紹到這了,更多相關(guān)Vue Nginx子目錄部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • Vue動(dòng)態(tài)組件表格的實(shí)現(xiàn)代碼

    Vue動(dòng)態(tài)組件表格的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Vue動(dòng)態(tài)組件表格的實(shí)現(xiàn)代碼,包括框架結(jié)構(gòu)組件,文中還給大家封裝了幾個(gè)組件,有按鈕組件、圖片組件、滑動(dòng)開關(guān),結(jié)合示例代碼給大家詳細(xì)講解,需要的朋友可以參考下
    2022-10-10
  • element-ui表格如何自適應(yīng)高度效果示例

    element-ui表格如何自適應(yīng)高度效果示例

    這篇文章主要給大家介紹了關(guān)于element-ui表格如何自適應(yīng)高度的相關(guān)資料,Element UI的Table組件默認(rèn)情況下是沒有自適應(yīng)高度的,文中給大家介紹了解決的辦法,需要的朋友可以參考下
    2023-08-08
  • Vue中插槽slot的使用方法與應(yīng)用場景詳析

    Vue中插槽slot的使用方法與應(yīng)用場景詳析

    這篇文章主要給大家介紹了關(guān)于Vue中插槽slot的使用方法與應(yīng)用場景的相關(guān)資料,插槽(Slot)是Vue提出來的一個(gè)概念,正如名字一樣,插槽用于決定將所攜帶的內(nèi)容,插入到指定的某個(gè)位置,從而使模板分塊,具有模塊化的特質(zhì)和更大的重用性,需要的朋友可以參考下
    2021-06-06
  • vue實(shí)現(xiàn)登錄功能

    vue實(shí)現(xiàn)登錄功能

    這篇文章主要介紹了vue實(shí)現(xiàn)登錄功能的步驟,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-12-12
  • Vue中Element的table多選表格如何實(shí)現(xiàn)單選

    Vue中Element的table多選表格如何實(shí)現(xiàn)單選

    這篇文章主要介紹了Vue中Element的table多選表格如何實(shí)現(xiàn)單選,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • vue中的局部過濾器和全局過濾器代碼實(shí)操

    vue中的局部過濾器和全局過濾器代碼實(shí)操

    這篇文章主要分享的是vue中的局部過濾器和全局過濾器代碼實(shí)操,下面文章主要以代碼展現(xiàn),具有一的的知識參考性,需要的小伙伴可以參考一下
    2022-02-02
  • vue第一次獲取不到元素的解決方法記錄

    vue第一次獲取不到元素的解決方法記錄

    Vue.js雖然說是數(shù)據(jù)驅(qū)動(dòng)頁面的,但是有時(shí)候我們也要獲取dom對象進(jìn)行一些操作。這篇文章主要給大家介紹了關(guān)于vue第一次獲取不到元素的解決方法,需要的朋友可以參考下
    2021-06-06
  • Vue的異步組件加載的實(shí)現(xiàn)方法小結(jié)

    Vue的異步組件加載的實(shí)現(xiàn)方法小結(jié)

    在 Vue 中,異步組件是指那些在需要時(shí)才會(huì)被加載的組件,與傳統(tǒng)的靜態(tài)組件不同,異步組件通過動(dòng)態(tài)加載的方式,可以有效地減少初始加載的資源和時(shí)間,在 Vue 中實(shí)現(xiàn)異步組件加載非常簡單,開發(fā)者有多種方法可以做到,本文給大家介紹了一些常用的實(shí)現(xiàn)方法
    2024-11-11
  • vue?點(diǎn)擊按鈕?路由跳轉(zhuǎn)指定頁面的實(shí)現(xiàn)方式

    vue?點(diǎn)擊按鈕?路由跳轉(zhuǎn)指定頁面的實(shí)現(xiàn)方式

    這篇文章主要介紹了vue?點(diǎn)擊按鈕?路由跳轉(zhuǎn)指定頁面的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue3組件異步更新和nextTick運(yùn)行機(jī)制源碼解讀

    Vue3組件異步更新和nextTick運(yùn)行機(jī)制源碼解讀

    這篇文章主要為大家介紹了Vue3組件異步更新和nextTick運(yùn)行機(jī)制源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評論

岳池县| 藁城市| 兰考县| 南和县| 富顺县| 封开县| 富民县| 镇康县| 西昌市| 长汀县| 内丘县| 儋州市| 辽阳县| 双流县| 金山区| 泾阳县| 泰和县| 墨竹工卡县| 临澧县| 郑州市| 额济纳旗| 侯马市| 江安县| 富裕县| 石门县| 灵寿县| 无棣县| 湖南省| 洪泽县| 无棣县| 四川省| 苗栗县| 崇文区| 乌拉特前旗| 丽水市| 双桥区| 青川县| 电白县| 开平市| 福鼎市| 河北区|