Nginx

Nginx簡介

    Nginx(”engine x”)是俄羅斯人Igor Sysoev(伊戈爾.塞索耶夫)編寫的一款高性能的HTTP和反向代理服務器。Nginx能夠選擇高效的epollKqueue、eventport作為網絡I/O模型,在高連接并發的情況下,NginxApache服務器不錯的替代品,它能夠支持高達5萬個并發連接數的響應,而內存、CPU等系統資源消耗卻非常低,運行非常穩定。

    Nginx已經在俄羅斯最大的門戶網站Rambler Media 上運行了多年時間,同時俄羅斯超過20%的虛擬主機平臺采用Nginx作為反向代理服務器。

    在國內也有多家互聯網平臺,如新浪博客、網易新聞、豆瓣等用作web服務器或反向代理服務器。

Nginx的安裝

可從官方網站(www.nginx.org)下載源碼編譯或下載預編譯好的rpm包。

Nginx的基本配置

Nginx的配置文件默認在/etc/nginx下,主配置文件為nginx.conf,其配置文件格式如下圖:

Nginx

Nginx

Nginx

    從上圖中可以看配置的結構由主配置段、event{}段、http{}段構成,而在http{}段中又由多個server{}段,在server{}段中又包含多個location{}段。因此不難看出一個server{}表示一臺虛擬主機。而location的作用是實現從URI到文件系統的路徑映射,而使用多個時,Nginx會根據用戶請求的URI來檢查定義的所有location,從而找出一個最佳匹配,而后應用其配置;那如何查找呢?其實在定義時可使用以下特殊符號來完成優先級的定義;

    =:對URI做精確匹配;

    ~:對URI做正則表達式模式匹配,區分字符大小寫

    ~*:對URI做正則表達式模式匹配,不區分字符大小寫

    ^~:對URI的左半部分做匹配檢查,不區分字符大小寫

    如果不帶符號則匹配URI的所有URL;

而它們是有優先級的。=的優先級最高,其次是^~,而~~*的優先級是相等的,最后是不帶符號的;

除了上圖中出現過的指令,另外還有其他的一些常用指令,下面來一一列舉:

1、alias:定義路徑別名,文檔映射的另一種機制;僅能用于location上下文中;

2、index:定義默認資源

3、try_files:按次序嘗試文件是否存在,第一個存在的用于響應用戶的請求;

4keepalive_requests:一次長連接上所允許請求的資源的最大數量默認為100;

5send_timeout:向客戶端改善大響應報文的超時時長;

6、client_body_buffer_size:用于設置接收客戶端請求報文body部分的緩沖區大小;默認為16k;超出此值時,其將被暫存到磁盤上由clien_body_temp_path指令所定義的位置;

7、client_body_temp_path [level1 [level2 [level3]]]:設定用于存儲客戶端請求報文body部分的臨時存儲路徑及子目錄結構和數量;

8、open_file_cache max=N [inactive=time]:開啟Nginx的文件緩存功能

9open_file_cache_valid:緩存有效性的檢查頻率,默認為60S;

10、open_file_cache_min_uses:在open_file_cache指令的inactive參數指定的時長內,至少應該被命中多少次才可被歸類為活動項;

11、基于IP訪問控制的:allow、deny

12、基于用戶訪問控制的:auth_basic、auth_basic_user_file

上面這些指令經常使用,而還有很多指令在這里沒有列舉出來,用到的時候可到官方網站了解(www.nginx.org)

原創文章,作者:人字拖,如若轉載,請注明出處:http://www.www58058.com/74952

(0)
人字拖人字拖
上一篇 2017-05-07
下一篇 2017-05-07

相關推薦

  • linux操作系統rpm軟件包管理

    軟件包管理 軟件包運行環境: API:Application Programming Interface     使用標準:POSIX:     源代碼運行步驟:預處理(如處理注釋)—>編譯成匯編代碼—>鏈接其他庫文件 ABI:applicatio…

    2016-08-22
  • 文件查找與解壓縮

    文件查找 腳本文件名的查詢 which(尋找執行文件) which [-a] command -a :將所有由PATH目錄中可以找到的命令均列出,而不只是第一個被找到的命令名稱 文件名的查找 文件查找:實時查找:遍歷所有文件進行條件匹配;(find)非實時查找:根據索引查找;(whereis、locate) whereis whereis [-bmsu] […

    Linux干貨 2017-04-08
  • 第四周練習

    1、復制/etc/skel目錄為/home/tuser1, 要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp -r /etc/skel /home/tuser1 chmod -R 700 /home/tuser1 2、編輯/etc/group文件,添加組hadoop。 vi /etc/group hadoop:x:2017 …

    Linux干貨 2017-08-04
  • 安全和加密

    安全基礎仿冒別人給某人發郵件telnet 127.0.0.1 25helo a.com 命令mail from:god@heaven.com 從某處發來的郵件rcpt to:root 給某人發郵件data 數據subject:hello 郵件名I miss you 郵件正文How old are you. 點代表結束quit redhat5普通用戶提升管理員…

    Linux干貨 2018-01-17
  • 集中管理利器-puppet快速入門-下

    Puppet配置 1.    文件管理 file 文件服務器寫法: /etc/puppet/ fileserver.conf 定義 [files] path /tmp/files  ## puppet數據存放目錄 =è后面遠程備份實戰會用到 allow *.example.com 實戰1: 備份master機…

    Linux干貨 2015-05-07
  • FHS文件系統介紹及各目錄功能說明

     FHS文件系統介紹及各目錄功能說明 M21-陸東貴 FHS簡介 Filesystem Hierarchy Standard(文件系統目錄標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理…

    Linux干貨 2016-10-18
欧美性久久久久