vue-router的默認根路徑是'#',如果不想要'#'就可以使用history模式。
1.在router的配置文件下加入
export default new Router({
mode:'history', //改為history模式
})
2.此時本地可以訪問到路徑,但是打包過后頁面出現空白,在保證靜態資源路徑加載正確的情況下,原因可能是項目的根路徑不是域名,
export default new Router({
mode:'history', //改為history模式
base: '/shexinaghui/', //項目根路徑就是線上訪問時路由前面的路徑
})
此時我們線上訪問的路徑就是https://域名/shexianghui/index,shexianghui就是項目的根路徑
3.使用npm run build打包,生成dist文件夾,我們可以將文件夾的名字改為shexianghui,然后將該文件夾拖到ftp服務器上。
也可以新建名為shexinaghui的文件夾,並將dist中的文件(包括static,favicon.ico和index.html)放到shexianghui文件夾中去.


4.此時訪問https://域名/shexianghui即可線上訪問該項目,但是刷新網站會出現404,在apache服務器上的解決辦法如下:
在項目的根目錄,也就是shexianghui文件夾下創建一個文件,名為.htaccess,文件中的內容是
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /shexianghui/
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /shexianghui/index.html [L]
</IfModule>
最后再重新上傳該文件夾到ftp即可。
如果以上都完成了,帶路由刷新瀏覽器https://quxun.co/taoteng/index出現白屏,控制台報以下錯誤
Uncaught SyntaxError: Unexpected token <,
檢查.htaccess文件RewriteBase和RewriteRule是否書寫正確。