vue項(xiàng)目部署到nginx/tomcat服務(wù)器的實(shí)現(xiàn)
開發(fā)完的vue項(xiàng)目,需要部署到Nginx/Tomcat服務(wù)器上運(yùn)行,作為一個(gè)前端小白,剛接觸vue不久,研究了一番,于是寫下這篇文章,記錄下來(lái)便于今后部署。
1.router(history)模式vue項(xiàng)目部署到nginx
1)修改router模式為history(默認(rèn)為hash)
const router = new VueRouter({
routes,
mode: 'history'
});
對(duì)路由模式不清楚的小伙伴,可以看這篇vue-router路由模式詳解
2)修改config/index.js,build下靜態(tài)資源路徑,完成后執(zhí)行npm run build打包

3)修改nginx配置
server {
listen 80;//代理端口
server_name 192.168.0.152;//代理名稱(域名、ip)
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root test; //項(xiàng)目存放的地址(當(dāng)前服務(wù)器位置)
index /index.html;
try_files $uri $uri/ @router; //一個(gè)覆蓋所有情況的候選資源:如果 URL 匹配不到任何靜態(tài)資源,返回同一個(gè) index.html 頁(yè)面
}
location @router {
rewrite ^.*$ /index.html last;
}
}
運(yùn)行結(jié)果:

2.vue項(xiàng)目部署到tomcat
1)項(xiàng)目上線,一般需要添加項(xiàng)目名,并且消去vue-router產(chǎn)生的#號(hào),需要在router配置
const router = new VueRouter({
routes,
mode: 'history',
base: '/test/'//項(xiàng)目名稱 訪問(wèn)路由頁(yè)面都需要加上這個(gè),訪問(wèn)的根路徑為http://ip:port/test
});
2)修改config/index.js,build下靜態(tài)資源路徑與base的取值一致

3)tomcat的配置
在tomcat的webapps新建文件夾,文件夾名稱和上面配置的根路徑一致,即為test,然后將打包生成的dist文件夾里面的文件復(fù)制到test下,并且新建文件WEB-INF/web.xml。
項(xiàng)目結(jié)構(gòu)為:

WEB-INF目錄下新增web.xml內(nèi)容為:
//覆蓋所有情況的候選資源:如果 URL 匹配不到任何靜態(tài)資源,返回同一個(gè) index.html頁(yè)面
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1" metadata-complete="true">
<display-name>Router for Tomcat</display-name>
<error-page>
<error-code>404</error-code>
<location>/index.html</location>
</error-page>
</web-app>
詳細(xì)了解可看vue官方文檔后端配置HTML5 History 模式
4)重新啟動(dòng)tomcat

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解vue項(xiàng)目?jī)?yōu)化之按需加載組件-使用webpack require.ensure
本篇文章主要介紹了詳解vue項(xiàng)目?jī)?yōu)化之按需加載組件-使用webpack require.ensure,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
基于Vue2-Calendar改進(jìn)的日歷組件(含中文使用說(shuō)明)
這篇文章主要介紹了基于Vue2-Calendar改進(jìn)的日歷組件(含中文使用說(shuō)明)的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-04-04
Vue 創(chuàng)建組件的兩種方法小結(jié)(必看)
Vue 創(chuàng)建組件的方法有哪些呢?下面小編就為大家分享一篇Vue 創(chuàng)建組件的兩種方法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02
詳解最新vue-cli 2.9.1的webpack存在問(wèn)題
這篇文章主要介紹了最新vue-cli 2.9.1的webpack存在問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
VS?Code打開vue文件出現(xiàn)很多黃色波浪線的完美解決辦法
作為一名經(jīng)驗(yàn)豐富的開發(fā)者,下面這篇文章主要給大家介紹了關(guān)于VS?Code打開vue文件出現(xiàn)很多黃色波浪線的完美解決辦法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-04-04
vue?openlayers實(shí)現(xiàn)臺(tái)風(fēng)軌跡示例詳解
這篇文章主要為大家介紹了vue?openlayers實(shí)現(xiàn)臺(tái)風(fēng)軌跡示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
Vue利用路由鉤子token過(guò)期后跳轉(zhuǎn)到登錄頁(yè)的實(shí)例
下面小編就為大家?guī)?lái)一篇Vue利用路由鉤子token過(guò)期后跳轉(zhuǎn)到登錄頁(yè)的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10

