寶塔服務器配置nginx刷新404的問題匯總


我們在本地使用vue測試和切換頁面沒有任何問題。於是打包好文件並上傳到服務器,頁面可以正常打開,但是一刷新就會出現頁面404,這種情況我們該怎么辦呢?

首先分析問題

這種原因多數情況是因為vue中的router模式設置為history模式,頁面url切換的跟隨着路由切換,
但刷新時瀏覽器並不知道你的網頁輸入的參數地址是想要訪問什么,並沒有找到你想要訪問的文件目錄,所以會報錯404;

分析清楚問題之后我們應該怎么辦呢?

一、切換hash模式

直接在進入route路由請求也,把route模式改為hash模式訪問,但這種模式有個缺點,后面會跟個#號,
但我們並不希望使用這種模式,而且看起來很難看讓人摸不清頭腦,后面到底是想請求什么呢

二、修改nginx的nginx.conf配置文件

在location中添加如下代碼。
root 和index一般默認即可。
除非你index文件沒有放在根目錄

location / {
  root ***
  index ***
  try_files $uri $uri/ /index.html;
}

三、修改寶塔配置文件


這種修改不太建議,因為404有可能被攔截

四、使用偽靜態目錄

當域名不能地址報錯時,統一指向默認地址

if (!-e $request_filename) {
    rewrite ^/(.*) /index.html last;
    break;
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM