nginx部署多個(gè)vue項(xiàng)目的方法示例
上一篇已經(jīng)介紹了然后配置web項(xiàng)目;今天由于公司需求,需要在同一域名端口下,部署兩個(gè)項(xiàng)目;今天花了一上午終于弄好了,選擇趕緊做一個(gè)筆記。
如何連接阿里云服務(wù)器就不在這里說(shuō)了,請(qǐng)看我以前的文章。
首先需要的效果
http://47.97.244.83/login
http://47.97.244.83/student/login
文件目錄

兩個(gè)項(xiàng)目并列在同一文件夾內(nèi)。
準(zhǔn)備好兩個(gè)vue的項(xiàng)目
http://47.97.244.83/login:這個(gè)不用修改配置直接build就可以。關(guān)鍵是二級(jí)域名的vue項(xiàng)目,需要進(jìn)行一下修改。
首先在config文件夾內(nèi)的index.js內(nèi)修改(注意是build內(nèi))
// nginx 配置 assetsPublicPath: '/student/',

這樣確保生產(chǎn)出來(lái)的文件,在index.html中都是在student下。

index.html文件修改
添加 <meta base=/student/ >
最后build的index.html文件如下:
<!DOCTYPE html> <html> <head> <meta base=/student/ > <meta charset=utf-8> <meta http-equiv=X-UA-Compatible content="IE=edge"> <meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=./favicon.ico> <title>礪行教育管理系統(tǒng)</title> <link href=/student/static/css/app.26c5efbf7403094b0b351615f215dca8.css rel=stylesheet> </head> <body> <noscript><strong>對(duì)比起程序報(bào)錯(cuò)了</strong></noscript> <div id=app></div> <script type=text/javascript src=/student/static/js/manifest.c07ff685ddc74bf39577.js></script> <script type=text/javascript src=/student/static/js/vendor.63945df20397482ff39e.js></script> <script type=text/javascript src=/student/static/js/app.39f0baab8f580b8d4bc2.js></script> </body> </html>
在src/router/index.js文件修改
添加 base: ‘/student/',

Nginx配置修改
server {
listen 80;
server_name localhost;
# root /usr/local/sixiucheng/codes;
location / {
root /usr/local/sixiucheng/codes/dist;
try_files $uri $uri/ @router;
index index.html index.htm;
}
location /student {
alias /usr/local/sixiucheng/codes/student/;
try_files $uri $uri/ /student/index.html;
index index.html index.htm;
}
location @router {
rewrite ^.*$ /index.html last;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
注意這里的root

一個(gè)是全局的一個(gè)單個(gè)引入,這里需要注意一下當(dāng)注釋掉全局的root時(shí)候,需要在二級(jí)配置下將root改為alias;如下圖

所以此時(shí)的配置為

最后一定要注意重啟?。?!
nginx -s reload
注意:如果80端口失敗
1.檢查下nginx配置,使用nginx -t 看看有無(wú)錯(cuò)誤信息
2.檢查本地防火墻是否開啟80
3.如果是云主機(jī),檢查安全組是否開放80權(quán)限。
題外話
01…剛開始將alias寫成root,導(dǎo)致html頁(yè)面中的css和js一直404;后來(lái)百度到加下面一句話,就可以解決問(wèn)題;但是這樣會(huì)將所有的js,css引入的位置修改。這里注意一下。
# 解決css,js引入失敗
location ~ .*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$
{
root /usr/local/sixiucheng/codes;
proxy_temp_path /usr/local/sixiucheng/codes;
}
02…網(wǎng)上還有alias的路徑指向,root和alias的區(qū)別在于(個(gè)人理解,出錯(cuò)希望點(diǎn)出):
location /file/{
alias /var/html/file; #這個(gè)查找文件的路徑直接是/var/html/file
}
location /file/{
root /var/html/file; #這個(gè)查找文件的路徑應(yīng)該是/var/html/file/file
}
到此這篇關(guān)于nginx部署多個(gè)vue項(xiàng)目的方法示例的文章就介紹到這了,更多相關(guān)nginx部署多個(gè)vue項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue左側(cè)菜單,樹形圖遞歸實(shí)現(xiàn)代碼
這篇文章主要介紹了vue左側(cè)菜單,樹形圖遞歸實(shí)現(xiàn)代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08
Vue或者React項(xiàng)目配置@路徑別名及智能提示方案
這篇文章主要介紹了Vue或者React項(xiàng)目配置@路徑別名及智能提示方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10
vue1.0和vue2.0的watch監(jiān)聽事件寫法詳解
今天小編就為大家分享一篇vue1.0和vue2.0的watch監(jiān)聽事件寫法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09
Vue.js設(shè)計(jì)與實(shí)現(xiàn)無(wú)限遞歸學(xué)習(xí)總結(jié)
這篇文章主要為大家介紹了Vue.js設(shè)計(jì)與實(shí)現(xiàn)無(wú)限遞歸學(xué)習(xí)總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
vue3 學(xué)習(xí)筆記之a(chǎn)xios的使用變化總結(jié)
本篇文章主要旨在幫助正在學(xué)vue3或者準(zhǔn)備學(xué)vue3的同學(xué)了解網(wǎng)絡(luò)請(qǐng)求axios該如何使用,防止接觸了一點(diǎn)點(diǎn)vue3的同學(xué)會(huì)有個(gè)疑問(wèn)。有興趣的小伙伴可以關(guān)注一下2021-11-11
解決vue頁(yè)面注入js修改input值問(wèn)題
這篇文章主要介紹了解決vue頁(yè)面注入js修改input值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03

