前後端分離專案使用Nginx配置負載均衡

2022-01-15 15:17:07 字數 1820 閱讀 9473

其實nginx官方文件有一篇文章專門介紹如何配置負載均衡,見: using nginx as http load balancer, 非常詳細。這篇部落格主要結合前後端異構專案(asp.net core webapi + angular/vue/react等),簡單總結一下nginx使用及心得。

2. 前端專案配置負載均衡

使用angular/vue/react等作為前台專案, 可以使用nginx作為web伺服器,對同乙個專案多部署幾個例項,然後按照官方文件配置負載均衡即可。

2-1. 簡單建立兩個發布目錄,每個目錄只放置簡單html標籤及內容的index.html檔案,模擬angular/vue/react等作為前台發布。為了便與觀察,兩個目錄下的index.html稍有不同。

1

doctype html

>

2<

html

lang

="en"

>

3<

head

>

4<

meta

charset

="utf-8"

>

5<

meta

name

="viewport"

content

="width=device-width, initial-scale=1.0"

>

6<

title

>web pages - 1

title

>

7head

>

8<

body

>

9<

h1>web pages - 1

h1>

10body

>

11html

>

2-2. 開啟nginx配置檔案,修改如下(已刪除其他與本主題不相干配置項),重啟nginx, 將兩個**發布一下。

1

server 9}

1011

server

18 }

2-3. 配置nginx負載均衡(在以上配置檔案基礎上增加以下配置)

1

upstream webpages56

server

12 }

3. 後端專案配置負載均衡

後端專案(asp.net core webapi) 不能直接使用nginx作為web伺服器,需要先使用iis、kestrel部署多個例項,或者把專案部署成服務,然後才能使用nginx配置負載均衡。

3-1. 假設我們已經使用iis部署了三個web api,分別為:localhost:8087,localhost:8088,localhost:8089。和上面類似的,只需在配置檔案中相應增加upstream節點和server節點即可。

upstream webapi 

server

error_page 500 502 503 504 /50x.html;

location = /50x.html

}

4. nginx官方文件中的一些其他常用參考

使用nginx前後端分離發布專案?

原理我就先不說了,直接上手 在右邊選擇download 我們選擇 nginx windows 1.14.1 然後會看到這樣乙個資料夾 我們可以用vscode開啟這個資料夾 然後開啟 conf nginx.conf檔案 找到server 把這server 裡的所有都注釋掉,然後新增這麼一段 如圖 li...

前後端分離專案

由於目前公司需要為已經存在的專案統一單點登入,而技術選型後採用的是apereo的cas。但是由於官方cas文件的混亂性 你懂得!並且其官方的例項和網上的例項教程都是基於傳統的專案 也就是非前後端分離專案 因此對於前後端分離的專案整合cas的可參考的資料就比較少,於是就有了下面的前後端分離專案基於ca...

用nginx實現前後端分離的專案的前後端訪問

現在幾乎都是前後端分析的專案,在開發和線上一般都會使用nginx做 來實現跨域和負債均衡。nginx安裝前面已經講過,現在寫寫如何配置,前端技術為vue。server location web server location web 前端 在路徑 var www html yanwei privat...