一,Nignx入門
1.1 Nignx是什么
? ? ? ? ??Nginx是一個高性能的開源Web服務(wù)器和反向代理服務(wù)器。它使用事件驅(qū)動的異步框架,可同時處理大量請求,支持負載均衡、反向代理、HTTP緩存等常見Web服務(wù)場景。Nginx可以作為一個前端的Web服務(wù)器,也可以作為反向代理服務(wù)器,將客戶端的請求轉(zhuǎn)發(fā)給后端的應(yīng)用服務(wù)器。它還支持靈活的模塊化設(shè)計,可以通過添加不同的模塊來實現(xiàn)各種各樣的功能。
1.2?Nignx優(yōu)點
高性能和高并發(fā)。Nginx采用事件驅(qū)動的方式來實現(xiàn)高并發(fā)處理,這使得它可以處理數(shù)千個并發(fā)連接而不會影響其性能。
輕量級和資源利用率低。Nginx具有非常小的內(nèi)存占用和CPU利用率,這使得它在資源受限的環(huán)境下運行非常出色
高可靠性和穩(wěn)定性。Nginx被廣泛使用在大型互聯(lián)網(wǎng)企業(yè)中,已經(jīng)被證明可以在高負載和惡劣的環(huán)境中保持穩(wěn)定和可靠
1.3 Nignx應(yīng)用場景
- Web服務(wù)器。Nginx可以作為一個前端的Web服務(wù)器,提供高性能和穩(wěn)定的Web服務(wù)
- 反向代理服務(wù)器。Nginx可以通過反向代理來實現(xiàn)負載均衡和高可用性,這使得它非常適用于流量高峰期和服務(wù)器集群
- 緩存服務(wù)器。Nginx支持HTTP緩存,可以將靜態(tài)文件和動態(tài)頁面緩存到內(nèi)存中,從而提高訪問速度和效率
- 安全性控制。Nginx支持基于IP地址、HTTP頭、請求方法等多種方式進行訪問控制和安全性管理
二,Nginx負載均衡
2.1 Nuinx的安裝
前言:
先將Nuinx的安裝包放置到Linux中
1)下載并解壓安裝包
下載命令:wget http://nginx.org/download/nginx-1.13.7.tar.gz
解壓命令:tar -xvf nginx-1.13.7.tar.gz? (如下)
解壓后:
2)一鍵安裝4個依賴
命令執(zhí)行:yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
3)安裝nginx
# 先進入安裝包目錄
命令:cd nginx-1.13.7? (后綴根據(jù)自己的安裝包名來)
# 編譯,執(zhí)行配置: 考慮到后續(xù)安裝ssl證書 添加兩個模塊
命令:? ?./configure --with-http_stub_status_module --with-http_ssl_module
?
4) 安裝
命令:make && make install
5)啟動 nginx 服務(wù)
安裝好的 nginx 服務(wù)在 /usr/local/nginx 下
cd /usr/local/nginx
再進入 /sbin 目錄下
# 啟動
命令:? ./nginx
借鑒命令 可不操作
# 重啟
./nginx -s reload
?
# 關(guān)閉
./nginx -s stop
?
# 或者,指定配置文件啟動
./nginx -c /usr/local/nginx/conf/nginx.conf
雖然已經(jīng)啟動了,但我們也不知道到底啟動成功沒有。
6)#下載插件
yum install lsof
7) 查看Nignx是否啟動
lsof -i:80
8) 設(shè)置防火墻開放 80 端口
?firewall-cmd --zone=public --add-port=80/tcp --permanent
查看開放端口號
?firewall-cmd --reload && firewall-cmd --list-port
最后網(wǎng)址填寫虛擬機地址訪問Nuinx
以下步驟借鑒即可,不操作
# 重啟
./nginx -s reload
# 關(guān)閉
./nginx -s stop
# 或者,指定配置文件啟動
./nginx -c /usr/local/nginx/conf/nginx.conf
其它:
強制終止指定進程:? kill -9 pid
2.2 tomcat負載均衡
①?準備2個tomcat(還有一個自行創(chuàng)建)
cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20_8081/
②?修改端口號
為了兩個tomcat端口號不一致,我們需要更改一個tomcat的端口號
命令:firewall-cmd --zone=public --add-port=8082/tcp --permanent? (名為一個8081的端口)
輸入命令 :??firewall-cmd --reload? ? (?#更新防火墻規(guī)則 )
輸入命令 :?firewall-cmd --zone=public --list-ports? ( 查看端口是否開放完成?)
輸入命令 : ?cd apache-tomcat-8.5.20/conf/ ? ( 進入conf目錄 )
輸入命令 : vim server.xml ? ?( 修改配置端口 )
按 i 進入編輯模式 ? 將Connector標簽中的port屬性改成8081具體步驟看下面紅字
1. HTTP端口,默認8080,如下改為8081
2.遠程停服務(wù)端口,默認8005,如下改為8006
3.AJP端口,默認8009,如下改,8010
再按Esc退出編輯模式,再輸入 :wq ?保存并且退出
③ 開啟兩個tomcat
依次兩個tomcat文件的bin目錄下,輸入??./startup.sh??啟動tomcat
最后打開瀏覽器訪問不同的tomcat?
8082
8081
2.3 Nginx配置
進入nginx/conf/文件下,雙擊打開修改nginx.conf文件內(nèi)容
內(nèi)容:
? ? #服務(wù)器的集群
? ? upstream ?tomcat_list { ?#服務(wù)器集群名字
? ? ? ? server ? ?127.0.0.1:8081 ?weight=1; ? #服務(wù)器1 ? weight是權(quán)重的意思,權(quán)重越大
? ? ? ? server ? ?172.17.0.4:8082 ?weight=2; #服務(wù)器2 ? weight是權(quán)重的意思,權(quán)重越大,分配? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 的概率越大
? ? }?具體修改步驟看下圖
修改完畢之后,進入nginx文件的sbin目錄下
重啟命令:./nginx -s reload
這時候直接使用我們的端口號就可進行訪問了,如果其中一個端口服務(wù)器關(guān)閉了,還有另一個服務(wù)器供我們使用。如下
2.4 部署項目
① 將項目的war包放入兩個服務(wù)器中(tomcat/webapps目錄下),
② tomcat啟動?
在進入tomcat/bin目錄下使用命令:?./startup.sh? ?啟動
能夠加載出數(shù)據(jù),此時我們的使用Nginx搭載負載均衡就完成了。
三,前端項目的部署?
1.1 導(dǎo)包(兩個問題)
① 將前端項目目錄下的config文件夾里的index.js文件中,將build對象下的assetsPublicPath中的“/”,改為“./”
②在使用vue-cli3腳手架搭建的項目,在打包文件上服務(wù)器的時候,其他的css,js樣式都能正確加載出路徑,
但是element的icon圖標卻不能正常加載出來。問題分析:
加載的路徑https://yxq.linksign.cn/static/css/static/fonts/element-icons.535877f.woff
本應(yīng)該加載的路徑https://yxq.linksign.cn/static/fonts/element-icons.535877f.woff
打包的路徑
事實上是打包時候讀取的文件路徑多了兩層;
找到build文件的utils.js 中有打包的路徑,看看generateLoaders();
Extract CSS when that option is specified, 指定該選項時提取CSS
發(fā)現(xiàn)少了個公共路徑,加上pubilcPath
1.2?上傳前端項目
創(chuàng)建一個文件夾名為mypro文件夾,以便存儲項目
將所需要的項目鼠標移動進去
1.3 解壓前端項目
這個是未解壓的文件夾,我們需要把它解壓,需要用到命令(要進入我們剛創(chuàng)建的文件夾中解壓)
并且選中zip解壓的命令 :yum install -y unzip ?
開始解壓的命令:?unzip blog.zip? ?(.zip前面的是所解壓包的名稱)
1.4 Nginxp配置
找到nginx.conf文件進行編輯。輸入命令 :??cd?/usr/local/nginx/conf/? ?
location / {
root /usr/local/mypro/dist;
#proxy_pass http://tomcat_list;
index index.html index.htm;
}
location ^~/api/ {
#^~/api/表示匹配前綴是api的請求,proxy_pass的結(jié)尾有/, 則會把/api/*后面的路徑直接拼接到后面,即移除api
proxy_pass http://tomcat_list/;
}
1.5?重啟Nginx
編輯完畢之后,進入到/usr/local/nginx/sbin中重啟Nginx
1.6 映射關(guān)系
這時候還是登入不了,因為映射關(guān)系導(dǎo)致,所以我們需要改一下映射
在到文件資源管理器中進入到 以下本地目錄
C:\Windows\System32\drivers\etc\hosts
找到?hosts 文件進行修改IP的請求
打開文件進行編輯
最后進行訪問項目即可文章來源:http://www.zghlxwxcb.cn/news/detail-738330.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-738330.html
到了這里,關(guān)于【Linux】Nignx的入門使用&負載均衡&前端項目部署---超詳細的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!