SpringBoot前端后端分離之Nginx服務器下載安裝過程
SpringBoot前端后端分離之Nginx服務器
1、Nginx介紹
Nginx是一款輕量級的Web服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。其特點是占有內(nèi)存少,并
發(fā)能力強,事實上nginx的并發(fā)能力在同類型的網(wǎng)頁服務器中表現(xiàn)較好,中國大陸使用nginx的網(wǎng)站有:百度、京東、
新浪、網(wǎng)易、騰訊、淘寶等。
2、Nginx下載和安裝
2.1、官方地址下載:https://nginx.org/en/download.html
2.2、使用虛擬機進行下載
1、安裝依賴包
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2、下載安裝包
wget https://nginx.org/download/nginx-1.22.0.tar.gz
如果沒有wget,請先安裝wget
yum -y install wget
下載之后可以直接使用【ll】命令查看下載文件
3、解壓
tar -zxvf nginx-1.22.0.tar.gz
4、進入安裝目錄
cd nginx-1.22.0
5、指定安裝位置
先創(chuàng)建文件夾再進行安裝
mkdir -p /opt/nginx ./configure --prefix=/opt/nginx
6、編譯并安裝
make && make install
3、Nginx目錄結構通過【tree】命令可以查看詳細的目錄結構
如果沒有tree命令先執(zhí)行:yum insall tree進行安裝
[root@localhost nginx]# tree . ├── conf │ ├── fastcgi.conf │ ├── fastcgi.conf.default │ ├── fastcgi_params │ ├── fastcgi_params.default │ ├── koi-utf │ ├── koi-win │ ├── mime.types │ ├── mime.types.default │ ├── nginx.conf │ ├── nginx.conf.default │ ├── scgi_params │ ├── scgi_params.default │ ├── uwsgi_params │ ├── uwsgi_params.default │ └── win-utf ├── html │ ├── 50x.html │ └── index.html ├── logs └── sbin
1、conf:配置文件目錄
2、html:靜態(tài)資源頁面目錄
3、lcgs:日志目錄
4、sbin:二進制文件,啟動、停止服務
重點目錄文件:conf/nginx.conf-------nginx配置文件
4、Nginx常用命令
1、查看版本號
[root@localhost nginx]# cd sbin/ [root@localhost sbin]# ./nginx -v nginx version: nginx/1.22.0
2、檢查配置文件的正確性
[root@localhost sbin]# ./nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
3、啟動nginx服務器
[root@localhost sbin]# ./nginx [root@localhost sbin]# ps -ef | grep nginx root 34344 1 0 07:34 ? 00:00:00 nginx: master process ./nginx nobody 34346 34344 0 07:34 ? 00:00:00 nginx: worker process root 34727 1823 0 07:34 pts/0 00:00:00 grep --color=auto nginx
訪問nginx服務器
通過宿主機的ip地址連接即可,默認是80端口,如果連接不上請檢查防火墻狀態(tài)和開放的端口

4、停止nginx訪問
./nginx -s stop
5、重新加載配置文件
如果修改過配置文件,需要重新加載才能使其生效【在啟動狀態(tài)也是可以重新加載】
./nginx -s reload
6、配置環(huán)境遍歷
進入環(huán)境遍歷
vim /etc/profile
設置PATH路徑根據(jù)自己的安裝目錄
PATH=/usr/local/nginx/sbin:$PATH
退出環(huán)境變量編輯模式在插入模式中按ESC鍵再執(zhí)行下面的命令
:wq
刷新環(huán)境變量
source /etc/profile
重點:如果編輯環(huán)境變量出現(xiàn)錯誤就使其他的命令不起效了,可以自行下面的代碼進行修復然后再編輯環(huán)境變量
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
環(huán)境變量如果設置成功在哪一個路徑都可以直接使用【nginx】命令進行執(zhí)行,不需要指定路徑了
5、nginx配置文件
文件位置:conf/nginx.conf整體分為三部分:
1、全局塊:和Nginx運行相關的全局配置
2、events塊:和網(wǎng)絡連接相關的配置
3、http塊:代理、緩存、日志記錄、虛擬主機配置
http全局塊
server塊:
- Server全局快
- location塊
注意:http塊中可以配置多個server塊,每一個server塊中可以配置多個location塊
# 全局塊
worker_processes 1;
# events塊:和網(wǎng)絡連接相關的配置
events {
worker_connections 1024;
}
# http塊:代理、緩存、日志記錄、虛擬主機配置
http {
# 全局快
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# server塊
server {
# server全局快
listen 80; # 監(jiān)聽的端口
server_name localhost; # 服務器名稱
# location塊,匹配客戶端請求url
location / {
root html; # 根目錄
index index.html index.htm; # 默認的首頁
}
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
6、Nginx具體應用
6.1、部署靜態(tài)資源
Ngnx可以作為靜態(tài)Wb服務器來部署靜態(tài)資源。靜態(tài)資源指在服務端真實存在并且能夠直接展示的一些文件,比如
常見的html頁面、css文件、js文件、圖片、視頻等資源。
相對于Tomcat,.Nginx處理靜態(tài)資源的能力更加高效,所以在生產(chǎn)環(huán)境下,一般都會將靜態(tài)資源部署到Nginx中。
將靜態(tài)資源部署到Nginx非常簡單,只需要將文件復到Nginx安裝目錄下的html目錄中即可。
6.2、反向代理 正向代理
是一個位于客戶端和原始服務器(origin server)之間的服務器,為了從原始服務器取得內(nèi)容,客戶端向代理發(fā)送一個
請求并指定目標(原始服務器),然后代理向原始服務器轉交清求并將獲得的內(nèi)容返回給客戶端。
正向代理的典型用途是為在防火墻內(nèi)的局域網(wǎng)客戶端提供訪問Internet的途徑。
正向代理一般是在客戶端設置代理服務器,通過代理服務器轉發(fā)請求,最終訪問到目標服務器。

反向代理
反向代理服務器位于用戶與目標服務器之間,但是對于用戶而言,反向代理服務器就相當于目標服務器,即用戶直接訪問反向代理服務器就可以獲得目標服務器的資源,反向代理服務器負責將請求轉發(fā)給目標服務器。
用戶不需要知道目標服務器的地址,也無須在用戶端作任何設定。

反向代理配置
這里配置的部署https協(xié)議的,如果需要轉發(fā)https的需要進行配置ssl證書
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
proxy_pass https://xxx.xxx.xxx:xxxx; # 反向代理配置,將請求轉發(fā)到指定的服務
}
}
6.3、負載均衡
早期的網(wǎng)站流量和業(yè)務功能都比較簡單,單臺服務器就可以滿足基本需求,但是隨著互聯(lián)網(wǎng)的發(fā)展,業(yè)務流量越來越
大并且業(yè)務邏輯也越來越復雜,單臺服務器的性能及單點故障問題就凸顯出來了,因此需要多臺服務器組成應用集群
進行性能的水平擴展以及避免單點故障出現(xiàn)。
●應用集群:將同一應用部署到多臺機器上,組成應用集群,接收負載均衡器分發(fā)的請求,進行業(yè)務處理并返回響應
數(shù)據(jù)
●負載均衡器:將用戶請求根據(jù)對應的負載均衡算法分發(fā)到應用集群中的一臺服務器進行處理

負載均衡配置
# upstream指令可以定義一組服務器
upstream targetserver{
# 指定訪問的IP地址和端口號
server xxx.xxx.xxx.xxx:xxxx;
server xxx.xxx.xxx.xxx:xxxx;
}
server {
listen 80;
server_name localhost;
location / {
# root html;
# index index.html index.htm;
proxy_pass http://targetserver; # 反向代理配置,將請求轉發(fā)到指定的服務upstream指令定義的IP地址
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}負載均衡權重設置在upstream指令里面的IP地址后面添加即可,如下
| 名稱 | 說明 |
|---|---|
| 輪詢 | 默認方式 |
| weight | 權重方式 |
| ip_hash | 依據(jù)ip分配方式 |
| least_conn | 依據(jù)最少連接方式 |
| fair | 依據(jù)響應時間方式 |
| url_hash | 依據(jù)url分配方式 |
# upstream指令可以定義一組服務器
upstream targetserver{
server 120.79.192.231 weight=5;
#server xxx.xxx.xxx.xxx:xxxx weight=1;
}
到此這篇關于SpringBoot前端后端分離之Nginx服務器的文章就介紹到這了,更多相關SpringBoot Nginx服務器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Nginx 路由轉發(fā)和反向代理location配置實現(xiàn)
本文主要介紹了Nginx 路由轉發(fā)和反向代理location配置實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11
Nginx應對Permission denied和File not found的配置
這篇文章主要介紹了Nginx應對Permission denied和File not found的錯誤配置,文中介紹了兩個PHP程序使用時出現(xiàn)相關問題后的解決案例,需要的朋友可以參考下2015-12-12
Nginx 502 Bad Gateway錯誤常見的4種原因和解決方法
這篇文章主要介紹了Nginx 502 Bad Gateway錯誤常見的4種原因和解決方法,本文適用FastCGI環(huán)境,其中多數(shù)原因通過配置相關參數(shù)即可解決,需要的朋友可以參考下2015-05-05

