Nginx 安裝使用

2021-10-25 01:57:44 字數 3612 閱讀 6660

1.nginx能做什麼?

nginx是靜態伺服器,他的效能比tomcat,要比tomcat效能高出很多倍。用它來可以做反向**、負載均衡、動靜分離、快取、壓縮、防盜煉、整合第三方外掛程式、高可用和限流、鑑權、灰度發布等。

2.nginx的一些常用命令命令

./sbin/nginx    //啟動nginx服務

./sbin/nginx -s stop //停止nginx服務

./sbin/nginx -s reload //過載

./sbin/nginx -t //檢查配置檔案語法是否有錯誤

./sbin/nginx -v //檢視nginx的安裝目錄

find -name configure //檢視配置檔案的位置

whereis nginx //定位檔案位置

3.當遇到[alert] kill(57676, 1) failed (3: no such process)或者[error] open() 「/usr/local/nginx/logs/nginx.pid」 failed (2: no such file or directory)類似的問題解決辦法

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf //指定啟動配置檔案位址

14.虛擬機器的配置

server 

}

4.基於配置埠號的虛擬主機

server
5.基於網域名稱配置的虛擬機器

server
6.location的配置規則

location =

/uri 精準匹配

location ^

~/uri 字首匹配

location ~

/uri

location / 通用匹配

7.已安裝nginx下安裝第三方模組

語法:./configure –prefix=/你的安裝目錄 --add-module=/第三方模組目錄 --add-module=/第三方模組目錄

這裡以安裝http_random_index_module和with-http_stub_status_module為例:

#find -name configure //檢視配置檔案的位置

#cd /usr/local/nginx-

1.16

.1// 進入配置目錄

#./configure --prefix=

/usr/local/nginx --with-http_stub_status_module --with-#http_random_index_module //新增模組

#make 安裝

#/usr/local/nginx/sbin/nginx -s stop //停止伺服器

#cp objs/nginx /usr/local/nginx/sbin/nginx //拷貝檔案進行覆蓋

server 

}

server 

}

8.反向**

使用者傳送請求,首先請求的是nginx伺服器,然後通過nginx配置,將請求**給需要轉的伺服器位址。**的是伺服器,這就是反向**,正向**是**的客戶端。

server 

error_page 404

/404.html;

//404錯誤跳轉的頁面

error_page 500

502503

504/

50x.html;

// 500 502 503 504這些錯誤碼跳轉的頁面

location =

/50x.html

}

9.負載均衡

網路負載均衡的大致原理是利用一定的分配策略將網路負載平衡地分攤到網路集群的各個操作單元上,使得單個重負載任務能夠分擔到多個單元上並行處理,使得大量併發訪問或資料流量分擔到多個單元上分別處理,從而減少使用者的等待響應時間

nginx是通過upstream來實現負載均衡的

upstream

語法: server address [paramters]

負載均衡策略或者演算法

輪詢演算法(預設), 如果有後端伺服器宕機以後,會自動踢出

ip_hash 根據請求的ip位址進行hash

權重輪詢 根據weight值,weight值越大,權重越大,請求的也就越多

upstream test 

server

}

10.動靜分離

依賴伺服器生成的是動,不需要依賴伺服器生存的如css,等是靜,可以直接放在nginx伺服器上,這樣就與tomcat伺服器分離開來了,這就是動靜分離。

在nginx的conf目錄下,有乙個mime.types檔案,裡面定義了靜態資源型別。

使用者訪問乙個**,然後從伺服器端獲取相應的資源通過瀏覽器進行解析渲染最後展示給使用者,而服務端可以返回各種型別的內容,比如xml、jpg、png、gif、flash、mp4、html、css等等,那麼瀏覽器就是根據mime-type來決定用什麼形式來展示的伺服器返回的資源給到瀏覽器時,會把**型別告知瀏覽器,這個告知的標識就是content-type,比contenttype:text/html。

11.快取配置

nginx可以通過expires設定快取,比如我們可以針對做快取,因為這類資訊基本上不會改變。

}12.壓縮

nginx通過gzip進行壓縮

//是否開啟gzip壓縮

gzip_comp_level 3

;//[1-9] 壓縮級別, 級別越高,壓縮越小,但是會占用cpu資源

//對那些型別的檔案做壓縮

gzip_vary on;

// 請求頭標識

}13.防盜煉配置

}14.跨域訪問

什麼叫跨域呢?如果兩個節點的協議、網域名稱、埠、子網域名稱不同,那麼進行的操作都是跨域的,瀏覽器為了安全問題都是限制跨域訪問,所以跨域其實是瀏覽器本身的限制。

}15.通過keeplived實現nginx的集群和高可用

16.通過openrestry+lua實現nginx鑑權,灰度發布等

nginx安裝使用

2.修改配置檔案 nginx.conf user nobody worker processes 1 error log logs error.log 3.在nginx目錄下的html中建立目錄test和test.rar檔案 4.開啟命令列切換到nginx目錄 4.1測試指令碼 nginx t 4....

Nginx 安裝使用

nginx是非同步框架的網頁伺服器,也可以用作反向 負載平衡器和http快取。該軟體由伊戈爾 賽索耶夫建立並於2004年首次公開發布。2011年成立同名公司以提供支援。2019年3月11日,nginx公司被f5 networks以6.7億美元收購。nginx是免費的開源軟體,根據類bsd許可證的條款...

Nginx安裝使用

apt install nginx y檢查執行狀態 ps ef grep nginx常用命令操作 nginx v v 檢視版本 nginx c etc nginx nginx.conf 指定配置檔案啟動nginx nginx s stop reload 關閉 重啟 nginx t 檢查配置檔案是否正...