使用nginx實(shí)現(xiàn)一個(gè)端口和ip訪問多個(gè)vue前端的全過程
前言:由于安全組要求,前端頁面只開放一個(gè)端口,但是項(xiàng)目有多個(gè)前端,此前一直使用的是一個(gè)前端使用單獨(dú)一個(gè)端口進(jìn)行訪問,現(xiàn)在需要調(diào)整。
需要實(shí)現(xiàn):這里以80端口為例,兩個(gè)前端分別是:project1,project2。
例如:訪問項(xiàng)目1:192.168.1.10:80/project1
訪問項(xiàng)目2:192.168.1.10:80/project2
需要的配置:1、nginx配置;2、vue前端代碼修改
1、nginx配置
server {
listen 80;
server_name localhost;
charset utf-8;
# 配置默認(rèn)訪問前端
location / {
root /usr/local/html/project1/dist/;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
# 項(xiàng)目2前端
location /project2{
alias /usr/local/html/project2/dist/;
index index.html;
try_files $uri $uri/ /project2/index.html;
}
# 項(xiàng)目1前端
location /project1{
alias /usr/local/html/project1/dist/;
index index.html;
try_files $uri $uri/ /project1/index.html;
}
# 項(xiàng)目1-api接口地址代理
location /project1-prod-api/ {
if ($request_method = OPTIONS ) {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
add_header Access-Control-Allow-Headers *;
return 200;
}
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_buffer_size 128k;
proxy_buffers 32 32k;
proxy_busy_buffers_size 128k;
proxy_pass http://192.168.1.10:8080/;
}
# 項(xiàng)目2-api接口地址代理
location /project2-prod-api/ {
if ($request_method = OPTIONS ) {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
add_header Access-Control-Allow-Headers *;
return 200;
}
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_buffer_size 128k;
proxy_buffers 32 32k;
proxy_busy_buffers_size 128k;
proxy_pass http://192.168.1.10:8081/;
}
}2、vue前端代碼修改
兩個(gè)項(xiàng)目的vue代碼均要修改
修改文件:在項(xiàng)目根目錄:.env.production
# 頁面標(biāo)題 VUE_APP_TITLE = 某某平臺 # 生產(chǎn)環(huán)境配置 ENV = 'production' # 生產(chǎn)環(huán)境 VUE_APP_BASE_API = '/project1-prod-api'
在項(xiàng)目根目錄:vue.config.js
修改publicPath參數(shù)

3、驗(yàn)證修改
重新打包構(gòu)建vue前端代碼,修改nginx配置,并重啟nginx,防火墻允許nginx配置的端口。
總結(jié)
到此這篇關(guān)于使用nginx實(shí)現(xiàn)一個(gè)端口和ip訪問多個(gè)vue前端的文章就介紹到這了,更多相關(guān)nginx一個(gè)端口和ip訪問多個(gè)vue內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx配置域名訪問時(shí)域名后出現(xiàn)兩個(gè)斜杠//的解決方法
最近這兩天重新寫了一下我的個(gè)人網(wǎng)站,在阿里云新買了一臺服務(wù)器,配置好以后出現(xiàn)了一個(gè)問題,就是輸入域名后域名地址會自動(dòng)在后面追加兩個(gè)斜桿,需要的朋友可以參考下2020-07-07
nginx開啟HSTS讓瀏覽器強(qiáng)制跳轉(zhuǎn)HTTPS訪問詳解
這篇文章主要介紹了nginx開啟HSTS讓瀏覽器強(qiáng)制跳轉(zhuǎn)HTTPS訪問詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05

