Nginx配置與應用詳解

2021-07-26 06:50:46 字數 1892 閱讀 9166

前言

基礎特性

基本功能

靜態資源的web伺服器,能快取開啟的檔案描述符

反向**伺服器,快取、負載均衡

支援fastcgi

模組化,非dso機制,過濾器gzip,ssi和影象大小調整等

支援ssl

擴充套件功能

基於名稱和ip做虛擬主機

支援keepalive

支援平滑配置更新或程式版本公升級

定製訪問日誌,支援使用日誌快取以提高效能

支援url rewrite

支援路徑別名

支援基於ip及使用者的認證

支援速率限制,併發限制等

基本架構

乙個master, 生成乙個或多個worker

事件驅動:kqueue, epoll, /dev/poll

訊息通知:select, poll, rt signals

支援sendfile, sendfile64

檔案aio

支援mmap

模組類別

核心模組

標準http模組

可選的http模組

郵件模組

第三方擴充套件模組

基本配置

虛擬主機

此處輸入描述

虛擬主機基本配置完成,當然虛擬主機裡也可以有很多引數的,下文會提及到

訪問控制

基於使用者

認證檔案由htpasswd命令建立

此處輸入描述

訪問測試

此處輸入描述

基於ip

此處輸入描述

重啟服務後訪問測試

此處輸入描述

壓縮功能

nginx將響應報文傳送至客戶端之前可以啟用壓縮功能,這能夠有效地節約頻寬,並提高響應至客戶

端的速度。通常編譯nginx缺省會附帶gzip壓縮的功能,因此,可以直接啟用之。

此處輸入描述

未壓縮訪問測試

此處輸入描述

此處輸入描述

重啟服務,壓縮後測試

此處輸入描述

壓縮成功

防盜煉(1) 定義合規的引用

此處輸入描述

(2) 拒絕不合規的引用

此處輸入描述

此處輸入描述

此處輸入描述

訪問測試

此處輸入描述

此處輸入描述

反向**

nginx通過proxy模組實現反向**功能。在作為web反向**伺服器時,nginx負責接收客戶請求,並能夠根據uri、客戶端引數或其它的處理邏輯將使用者請求排程至上游伺服器上(upstream server)。

nginx在實現反向**功能時的最重要指令為proxy_pass,它能夠將location定義的某uri**至指定的上游伺服器(組)上。如下面的示例中,location的/uri將被替換為上游伺服器上的/newuri。

此處輸入描述

此處輸入描述

快取nginx做為反向**時,能夠將來自上游伺服器的響應快取至本地,並在後續的客戶端請求同樣內容時

直接從本地構造響應報文。

此處輸入描述

此處輸入描述

快取前請求時間

此處輸入描述

快取後請求時間

此處輸入描述

此時快取目錄應該有快取檔案生成

此處輸入描述

負載均衡

nginx可利用自身的upstream模組實現,upstream模組的負載均衡演算法主要有三種,輪調(round-robin)、ip雜湊(ip_hash)和最少連線(least_conn)三種。

此處輸入描述

此處輸入描述

此處輸入描述

如此便可實現簡單的負載均衡功能

the end

好了,有關nginx的基礎配置及應用就先說到這裡了,第一次接觸nginx,寫的比較亂,敬請諒解。

nginx安裝與配置詳解

目錄 一 安裝nginx 二 使用nginx 簡單與單台tomcat整合 三 詳細使用 nginx就是去配置其檔案而已 如下所示 2 進行安裝 tar zxvf nginx 1.6.2.tar.gz yum install pcre yum install pcre devel yum instal...

nginx安裝與配置詳解

概念 靜態網頁 靜態一般是跟後端資料庫不發生互動的網頁,其網頁內容很少更新或者幾乎不更新,網頁檔案字尾命名通常是以.htm,html,xml等結尾的。動態網頁 動態網頁一般是後端資料庫發生互動的網頁,其網頁內容經常更新或者隨著後端資料庫內容變化而更新,網頁檔案字尾命通常是.asp jsp php 等...

Nginx基礎應用 配置檔案詳解

指定執行nginx的worker程序的使用者,預設為nobody linux裡所有程式都是檔案,都具有許可權問題,哪些可以訪問哪些不能訪問通過使用者的許可權來控制 user nobody worker程序數,一般和核數匹配 worker processes 1 日誌路徑,這個設定可以放入全域性塊,h...