国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

nginx 部署vue項目,頁面白屏或者頁面刷新出現(xiàn)404問題

這篇具有很好參考價值的文章主要介紹了nginx 部署vue項目,頁面白屏或者頁面刷新出現(xiàn)404問題。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

項目場景:

將vue項目打包部署到nginx上面運行


問題描述

問題一:運行時頁面白屏。

問題二:頁面可以正常顯示,當(dāng)刷新頁面的時候頁面報404錯誤。


原因分析:

頁面白屏分析:我們可以先查看一下nginx下的 logs/error.log 日志文件,確定我的問題是因為項目打包時候路勁配置問題。

頁面404分析:我們在將 vue項目打包部署時,地址欄的地址只是 vue的路由,并不是真正的文件目錄地址。所有的路由都是依賴于 SPA單頁應(yīng)用的index.html,所以當(dāng)我們在刷新時,按照地址欄的地址,找不到對應(yīng)的文件,就產(chǎn)生404。


解決方案:

頁面白屏解決:

配置vue項目根目錄下的vue.config.js文件,代碼如下:

const { defineConfig } = require('@vue/cli-service')

// 打包配置
module.exports = {
  transpileDependencies: true, // 配置需要被 Babel 轉(zhuǎn)譯的依賴項。
  publicPath: process.env.NODE_ENV === 'production' ? '/dist/' : './',
  outputDir: "dist", //輸出文件目錄
  assetsDir: "static", //靜態(tài)資源文件名稱
  productionSourceMap: false, //去除打包后js的map文件
  lintOnSave: false,
  runtimeCompiler: false,//去掉console

  // 解決跨域
  devServer: {
    host:"127.0.0.1:xxxx",// 以上的ip和端口是我們本機的;下面為需要跨域的
    proxy: { //配置跨域 		
      '/api': {
        target: " ", //這里后臺的地址模擬的;應(yīng)該填寫你們真實的后臺接口
        ws: true,
        secure: false, // 如果是https接口,需要配置這個參數(shù)
        changOrigin: true, //允許跨域
        pathRewrite: {
          '^/api': '' //請求的時候使用這個api就可以
        }
      }
    },
    historyApiFallback: true,
  }
}

頁面404解決:

配置nginx中conf目錄下的nginx.conf文件,代碼如下:

location /dist {
	alias html/dist;
	index  index.html index.htm;
	try_files  $uri $uri/ /dist/index.html;
}

location @router {
	rewrite ^.*$ /dist/index.html;
}

解釋:當(dāng)我們訪問一個地址為 http://localhost:8056/dist/AssetChanges的時候先通過alias 確定路徑 html/dist,然后通過try_files配置,首先會在html/dist下去找 $uri,也就是login這個文件,這個時候因為沒有l(wèi)ogin文件,就會去找 $uri/ ,也就是 /login/ 這個文件目錄,如果還是沒找到,就會將其重定向到 @router,在定義的 @router 里,我們將其都指向 /dist 文件夾下的 index.html。這樣就成功解決問題文章來源地址http://www.zghlxwxcb.cn/news/detail-616333.html

到了這里,關(guān)于nginx 部署vue項目,頁面白屏或者頁面刷新出現(xiàn)404問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue項目切換頁面會白屏,刷新之后才會正常顯示(已解決)

    面對這種問題有兩個方面: 1.就是template中沒有div標(biāo)簽/template 錯誤寫法: 正確寫法:? 切記:div標(biāo)簽必須是包裹住所有的標(biāo)簽,除了template外這個div就是爹 2.template中有div標(biāo)簽/template 錯誤寫法:原因:他會把注釋當(dāng)作為一個節(jié)點,所以div就不是最大的容器了,他要先識別div標(biāo)

    2024年02月10日
    瀏覽(26)
  • docker使用nginx部署vue刷新頁面404

    docker使用nginx部署vue刷新頁面404

    從docker內(nèi)部復(fù)制出來的配置文件是這樣的,但是刷新頁面之后就顯示404,關(guān)鍵是我兩個前端項目都是用的這一個配置文件,但是只有一個項目出現(xiàn)刷新瀏覽器顯示404的問題,這給我搞懵了?。。?在網(wǎng)上查找問題原因和解決辦法,但是大多數(shù)都說是資源找不到,讓修改配置文件

    2024年01月18日
    瀏覽(26)
  • vue/react項目刷新頁面出現(xiàn)404的原因以及解決辦法

    問題描述:vue/react項目,正常的頁面操作跳轉(zhuǎn),不會出現(xiàn)404的問題,但是一旦刷新,就會出現(xiàn)404報錯。 產(chǎn)生原因:我們打開vue/react打包后生成的dist文件夾,可以看到只有一個 index.html 文件及一些靜態(tài)資源,這個是因為vue/react是單頁應(yīng)用(SPA),只有一個index.html作為入口文件,

    2024年02月06日
    瀏覽(27)
  • vue3 動態(tài)添加路由刷新后頁面丟失(白屏)問題

    vue3 動態(tài)添加路由刷新后頁面丟失(白屏)問題

    動態(tài)添加路由操作一般是用vuex或者Pinia封裝,在登錄頁面調(diào)用 如果出現(xiàn)刷新頁面丟失有兩種可能: 1:vuex或者Pinia沒有做持久化處理 2:動態(tài)添加路由需要在main.ts里面也調(diào)用一次 不需要路由守衛(wèi)即可實現(xiàn) 注意:必須要在頁面掛載前還有路由配置完成前調(diào)用添加,不然還是丟

    2024年02月16日
    瀏覽(28)
  • 服務(wù)器部署—若依【vue】如何部署到nginx里面?nginx刷新頁面404怎么辦?【完美解決建議收藏】

    服務(wù)器部署—若依【vue】如何部署到nginx里面?nginx刷新頁面404怎么辦?【完美解決建議收藏】

    服務(wù)器部署項目我們大家都會遇到,但是有些鐵子會遇到很多的問題,比如前端部署nginx如何操作? 前端有單純的靜態(tài)頁面、還有前后端分離的項目;這里博主直接分享最牛最到位的前后端分離項目的前端部署到nginx上面,以若依項目【springboot+vue】為例,實現(xiàn)將前端部署到

    2024年02月03日
    瀏覽(31)
  • Nginx筆記-vue項目刷新出現(xiàn)404(try_files和index)

    目前的nginx.conf配置: 部署是成功了,但是有個問題,就是感覺整個前端不會找uri,按F5或者在瀏覽器輸入url都會404,只從vue默認的地方進,才行。 解決方法: 原因: index index.htm index.html; index 就是根目錄,也就是只識別“/”結(jié)尾的,輸入不存在或者刷新頁面的路徑就直接報

    2024年02月09日
    瀏覽(27)
  • 解決Vue3+Vite3 打包部署到nginx后配置非根目錄刷新頁面報錯空白

    解決Vue3+Vite3 打包部署到nginx后配置非根目錄刷新頁面報錯空白

    報錯內(nèi)容 解決方法 router文件 vite.config.ts nginx.conf 配置中路徑apps是我自建的存放前端頁面的文件夾 起關(guān)鍵作用的是 try_files $uri $uri/ /demo/index.html ,當(dāng)然上面項目文件夾demo也需保持一致 alias 后面的路徑是Vue項目打包后dist靜態(tài)文件服務(wù)器存放路徑,一般在nginx下面建一個文件夾

    2024年02月11日
    瀏覽(99)
  • vue3項目部署到服務(wù)器,剛打開沒事,一刷新頁面就404

    vue3項目部署到服務(wù)器,剛打開沒事,一刷新頁面就404

    vue3項目部署到服務(wù)器,剛打開沒事,一刷新頁面就404 不知道什么原因。百度了下才發(fā)現(xiàn)問題所在 問題所在: vue-router歷史模式的問題: vue3中歷史模式,默認改為了HTML5模式: createWebHistory() 解決辦法: createWebHistory 換成 createWebHashHistory ,將歷史模式,由當(dāng)前的HTML5模式,改

    2024年01月18日
    瀏覽(37)
  • Vue配合Nginx部署出現(xiàn)404、頁面無法跳轉(zhuǎn)、后端請求失敗問題解決方案

    常見問題有: 1、部署后,打開地址可以看到,但是刷新后出現(xiàn)404。 2、Vue的路由資源并不一定是真實路徑,導(dǎo)致頁面無法跳轉(zhuǎn)或其他資源加載問題。 3、請求后端接口地址失敗。

    2024年02月13日
    瀏覽(94)
  • 前端部署nginx刷新后404,解決Nginx刷新頁面后404的問題

    前端部署nginx刷新后404,解決Nginx刷新頁面后404的問題

    使用Nginx部署后,登錄頁面刷新一下就出來404,如下圖: 刷新以后 ,頁面變成404 Not Found 查看了一下nginx配置,出現(xiàn)問題的配置是這樣的: 修改后的配置是這樣的 添加了 try_files $uri $uri/ /index.html, 然后重啟一下nginx問題就解決了。 解釋: try_files 表示檢查文件是否存在,返回

    2024年02月13日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包