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

Vite項(xiàng)目Nginx子路徑部署全攻略

 更新時(shí)間:2026年05月22日 10:09:44   作者:龔雋婭Percy  
本文介紹了解決Vite項(xiàng)目部署到Nginx路徑后后后后頁面空白、資源加載失敗問題的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

你是否曾遇到Vite項(xiàng)目部署到Nginx子路徑后頁面空白、資源加載失敗或路由刷新404的問題?本文將通過3步配置法+故障排除指南,徹底解決這些痛點(diǎn)。讀完你將掌握:

  • Vite配置文件的關(guān)鍵參數(shù)設(shè)置
  • Nginx服務(wù)器的精確路由規(guī)則
  • 靜態(tài)資源路徑的自動(dòng)適配方案
  • 404錯(cuò)誤的終極解決辦法

1. Vite項(xiàng)目配置(核心步驟)

1.1 設(shè)置base路徑

打開項(xiàng)目根目錄的vite.config.js文件,添加base配置項(xiàng)指定子路徑名稱:

export default defineConfig({
  base: '/vite-app/',  // 子路徑名稱,必須以/開頭和結(jié)尾
  // 其他配置...
})

?? 注意:base值必須與Nginx配置中的location路徑完全一致。例如Nginx配置/app/,則此處必須設(shè)為/app/。

1.2 構(gòu)建生產(chǎn)版本

執(zhí)行構(gòu)建命令生成優(yōu)化后的靜態(tài)文件:

npm run build  # 構(gòu)建產(chǎn)物默認(rèn)輸出到dist目錄

構(gòu)建完成后,檢查dist/index.html文件,確認(rèn)所有資源引用路徑已自動(dòng)加上/vite-app/前綴。

2. Nginx服務(wù)器配置

2.1 基礎(chǔ)配置模板

在Nginx配置文件(通常位于/etc/nginx/conf.d/目錄)中添加以下配置:

server {
    listen 80;
    server_name yourdomain.com;  # 替換為你的域名

    # 子路徑部署核心配置
    location /vite-app/ {
        alias /path/to/your/vite/dist/;  # 替換為實(shí)際dist目錄絕對路徑
        try_files $uri $uri/ /vite-app/index.html;  # 解決SPA路由刷新404問題
        
        # 緩存控制 - 靜態(tài)資源長期緩存
        location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2)$ {
            expires 30d;
            add_header Cache-Control "public, max-age=2592000";
        }
    }
}

2.2 配置說明

參數(shù)作用示例值
location /vite-app/匹配子路徑請求/admin/或/portal/
alias指定靜態(tài)文件目錄/var/www/vite-app/dist/
try_files實(shí)現(xiàn)SPA路由重定向$uri $uri/ /vite-app/index.html

配置完成后,執(zhí)行以下命令使配置生效:

nginx -t  # 測試配置是否有誤
systemctl reload nginx  # 平滑重啟Nginx

3. 部署驗(yàn)證與故障排除

3.1 基本訪問測試

在瀏覽器中訪問 http://yourdomain.com/vite-app/,驗(yàn)證:

  • 首頁是否正常加載
  • 點(diǎn)擊導(dǎo)航后URL是否顯示為 /vite-app/about 格式
  • 刷新頁面是否仍能正常顯示

3.2 常見問題解決方案

問題1:靜態(tài)資源404錯(cuò)誤

原因:Vite構(gòu)建的資源路徑與Nginx配置不匹配
解決:檢查vite.config.js中的base值是否與Nginx的location路徑完全一致

問題2:路由刷新后404

原因:Nginx未配置SPA路由重定向
解決:確保try_files指令正確設(shè)置為 $uri $uri/ /vite-app/index.html

問題3:CSS/JS加載跨域

原因:Nginx未正確配置CORS頭
解決:在location塊中添加:

add_header Access-Control-Allow-Origin *;

4. 高級優(yōu)化配置

4.1 啟用Gzip壓縮

在Nginx配置中添加壓縮配置,減少傳輸體積:

gzip on;
gzip_types text/css application/javascript image/svg+xml;
gzip_min_length 1k;
gzip_comp_level 6;

4.2 配置HTTPS(推薦)

通過Let's Encrypt獲取免費(fèi)SSL證書后,配置HTTPS:

server {
    listen 443 ssl;
    server_name yourdomain.com;
    
    ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    
    # 其他SSL配置...
    
    location /vite-app/ {
        # 同上配置...
    }
}

5. 部署架構(gòu)參考

下圖展示了Vite項(xiàng)目在Nginx子路徑部署的完整架構(gòu):

總結(jié)與最佳實(shí)踐

  1. 配置同步原則:始終保持Vite的base配置與Nginx的location路徑完全一致
  2. 構(gòu)建驗(yàn)證:每次修改配置后執(zhí)行npm run build重新構(gòu)建
  3. 緩存策略:對靜態(tài)資源設(shè)置長期緩存,對HTML設(shè)置不緩存
  4. 版本控制:建議在子路徑中包含版本號,如/vite-app/v2/,便于多版本共存

官方文檔:docs/guide/static-deploy.md
配置示例:playground/backend-integration/vite.config.js

通過以上步驟,你的Vite項(xiàng)目將在Nginx子路徑環(huán)境中穩(wěn)定運(yùn)行,同時(shí)具備優(yōu)秀的性能和可維護(hù)性。

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

相關(guān)文章

  • vue頁面使用js實(shí)現(xiàn)前端打印功能

    vue頁面使用js實(shí)現(xiàn)前端打印功能

    這篇文章主要介紹了vue頁面使用js實(shí)現(xiàn)前端打印功能,文中通過圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家實(shí)現(xiàn)打印功能有一定的幫助,需要的朋友可以參考下
    2024-05-05
  • vue第一次獲取不到元素的解決方法記錄

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

    Vue.js雖然說是數(shù)據(jù)驅(qū)動(dòng)頁面的,但是有時(shí)候我們也要獲取dom對象進(jìn)行一些操作。這篇文章主要給大家介紹了關(guān)于vue第一次獲取不到元素的解決方法,需要的朋友可以參考下
    2021-06-06
  • 解決vue項(xiàng)目刷新后,導(dǎo)航菜單高亮顯示的位置不對問題

    解決vue項(xiàng)目刷新后,導(dǎo)航菜單高亮顯示的位置不對問題

    今天小編就為大家分享一篇解決vue項(xiàng)目刷新后,導(dǎo)航菜單高亮顯示的位置不對問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Vue.js標(biāo)簽頁組件使用方法詳解

    Vue.js標(biāo)簽頁組件使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了Vue.js標(biāo)簽頁組件的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一
    2019-10-10
  • vue 更改連接后臺(tái)的api示例

    vue 更改連接后臺(tái)的api示例

    今天小編就為大家分享一篇vue 更改連接后臺(tái)的api示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 手寫實(shí)現(xiàn)vue2下拉菜單dropdown組件實(shí)例

    手寫實(shí)現(xiàn)vue2下拉菜單dropdown組件實(shí)例

    這篇文章主要為大家介紹了手寫vue2下拉菜單dropdown組件實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 詳解Vue的七種傳值方式

    詳解Vue的七種傳值方式

    這篇文章主要介紹了Vue的七種傳值方式,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • vuex如何在非組件中調(diào)用mutations方法

    vuex如何在非組件中調(diào)用mutations方法

    這篇文章主要介紹了vuex如何在非組件中調(diào)用mutations方法,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • VUE-Table上綁定Input通過render實(shí)現(xiàn)雙向綁定數(shù)據(jù)的示例

    VUE-Table上綁定Input通過render實(shí)現(xiàn)雙向綁定數(shù)據(jù)的示例

    今天小編就為大家分享一篇VUE-Table上綁定Input通過render實(shí)現(xiàn)雙向綁定數(shù)據(jù)的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • vue.js指令和組件詳細(xì)介紹及實(shí)例

    vue.js指令和組件詳細(xì)介紹及實(shí)例

    這篇文章主要介紹了vue.js功能介紹 - 指令,組件詳細(xì)介紹及實(shí)例,詳細(xì)的介紹了指令和組件的用法,有興趣的可以了解一下。
    2017-04-04

最新評論

昆明市| 黑河市| 马公市| 互助| 卢湾区| 惠东县| 剑阁县| 湖州市| 炉霍县| 临猗县| 上蔡县| 英山县| 鄄城县| 吉林省| 临桂县| 孝昌县| 金寨县| 元氏县| 西华县| 张家口市| 江津市| 邹城市| 泊头市| 奎屯市| 耒阳市| 广安市| 九寨沟县| 甘南县| 保靖县| 容城县| 阿巴嘎旗| 合作市| 平利县| 永春县| 开封县| 济源市| 江西省| 灯塔市| 蓬安县| 永城市| 乌兰察布市|