前言
前后端分離惋耙,是指前端html頁面與后端開發(fā)獨立、運行(部署)獨立儿奶。
物料準備
部署物料
- 編譯好的前端代碼
- 打包好的后端java程序
- 穩(wěn)定版的 Ngnix 前往下載
圖1:物料清單
安裝Ngnix(windows)
將下載好的nginx-1.22.1.zip
解壓進行雙擊 nginx.exe
進行安裝:
圖2:安裝Nginx
驗證Nginx 安裝葬毫,訪問:http://localhost
圖2:安裝Nginx
表示安裝成功,在Windows環(huán)境安裝雕沿,需要注意,安裝目錄不能有中文猴仑。
部署應(yīng)用
發(fā)布規(guī)劃
- 通過
example.org
能夠訪問到頁面 - 啟動2個后端節(jié)點做負載均衡
配置代理
為了后面更好的維護代理的配置文件审轮,在 conf 目錄下新建一個conf.d的目錄,用于存放后續(xù)擴展的配置辽俗。然后通過 include conf.d/*.conf
引入到nginx.conf
主配置文件中疾渣。
圖3:Nginx配置目錄
圖4:引入子配置文件目錄
注:includ 子配置文件的路徑是相對路徑,基于
conf
目錄崖飘;當然也可以用絕對路徑榴捡。
配置前端靜態(tài)代理
創(chuàng)建conf.d/example.conf
配置文件,并配置前端代理朱浴。
server {
listen 80;
server_name example.org;
location / {
# 存放靜態(tài)資源的路徑吊圾,此處是相對路徑达椰,以 Nginx 根路徑為基礎(chǔ),也可以用絕對路徑
root www/html;
}
}
圖5:靜態(tài)資源存放路徑
配置后端反向代理
首先项乒,跟前端開發(fā)進行約定啰劲,通過/api
前綴訪問后端接口,在Nginx就可以通過/api
的代理路徑檀何,反向代理到后端接口蝇裤。同時,按照我們的發(fā)布規(guī)劃埃碱,后端需要做負載猖辫。
去到conf.d/example.conf
配置文件中,配置后端的方向代理砚殿,并做負載啃憎。
upstream backend {
# 因為在本地部署,所以是localhost似炎,可以是不同的服務(wù)器IP或者域名
server localhost:8080;
server localhost:8081;
}
server {
listen 80;
server_name example.org;
location / {
# 存放靜態(tài)資源的路徑辛萍,此處是相對路徑,以 Nginx 根路徑為基礎(chǔ)羡藐,也可以用絕對路徑
root www/html;
}
location /api/ {
proxy_pass http://backend/;
}
}
提示:完成上面配置之后贩毕,確保后端應(yīng)用程序啟動的2個節(jié)點的端口是
8080
和8081
。
更新Nginx 配置仆嗦,使其生效:
./nginx.exe -s reload
驗證部署
添加 hosts
127.0.0.1 example.org
瀏覽器輸入:http://example.org 訪問
圖6:部署驗證
至此辉阶,項目部署完成。
總結(jié)
- Nginx 安裝目錄不能有中文
- Nginx 靜態(tài)目錄的相對路徑是基于Nginx安裝的根目錄
- Nginx 子配置文件的相對路徑是基于
conf
目錄