最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx 介紹及日常管理的詳解

 更新時(shí)間:2017年10月26日 09:43:32   作者:Leshami  
這篇文章主要介紹了Nginx 介紹及日常管理的詳解的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下

Nginx 介紹及日常管理的詳解

Nginx(發(fā)音同 engine x)是一款輕量級的Web 服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,并在一個(gè)BSD-like 協(xié)議下發(fā)行。其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力確實(shí)在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好.中國大陸使用nginx網(wǎng)站用戶有:新浪、網(wǎng)易、 騰訊等。本文簡要描述了Nginx的基本特性及其配置文件的簡單描述。

一、Nginx的工作進(jìn)程

1、一個(gè)主進(jìn)程:
  主進(jìn)程的主要目的是讀取和評估配置,啟動、終止及維護(hù)工作進(jìn)程以及創(chuàng)建、綁定及關(guān)閉套接字。 

2、多個(gè)工作進(jìn)程:
  工作進(jìn)程處理web請求。nginx的采用了基于事件的模型和操作系統(tǒng)相關(guān)的機(jī)制,有效地分配工作進(jìn)程之間的請求。
  負(fù)責(zé)解析http協(xié)議;提供反向代理及過濾功能;nginx任何能完成的其它任務(wù);
  工作進(jìn)程的數(shù)量被定義在配置文件中,可以使用配置文件定義固定的數(shù)量,或根據(jù)可用的CPU內(nèi)核數(shù)實(shí)現(xiàn)自動調(diào)整其數(shù)量。

3、緩存加載器(cache loader):
  檢查緩存存儲中的緩存對象;
  使用緩存元數(shù)據(jù)建立內(nèi)存數(shù)據(jù)庫;
  接收、傳入并處理來自客戶端的連接;

4、緩存管理器(cache manager):
  緩存的失效及過期檢驗(yàn);

5、基于配置文件定義Nginx的工作方式
  nginx的工作方式及其模塊的工作是在配置文件中確定的。
  缺省情況下,其配置文件為nginx.conf,通常位于/usr/local/nginx/conf, /etc/nginx, 或者/usr/local/etc/nginx目錄下。

二、Nginx特性

1、Nginx的模塊化特性
    Nginx服務(wù)器與Apache httpd類似,采用了基于模塊化的構(gòu)建方式。
    在安裝部署Nginx服務(wù)器時(shí),一定要遵循:最小化模塊安裝,以節(jié)省無用模塊對Nginx的性能影響及占用系統(tǒng)資源。
    a、從功能上劃分
      Nginx核心模塊:包括Nginx的內(nèi)核模塊和事件驅(qū)動模塊
      http服務(wù)器模塊:這類模塊包括三類模塊,即HTTP的內(nèi)核模塊和標(biāo)準(zhǔn)模塊以及可選的HTTP模塊

    b、從發(fā)布模塊的方式來劃分
      官方模塊
      第三方模塊

    c、從模塊的可選項(xiàng)來劃分
      必選模塊(Main和Events)
      可選模塊

2、Nginx功能特性
    模塊化設(shè)計(jì)、較好擴(kuò)展性
    高可靠性
      master-->worker
    低內(nèi)存消耗
      10000個(gè)keep-alive連接在Nginx僅消耗2.5MB
    支持熱部署
      不停機(jī)而更新配置文件、更換日志文件、更新服務(wù)器程序版本

  基本功能:
    靜態(tài)資源的web服務(wù)器,能緩存打開的文件描述符;
    http, smtp, pop3協(xié)議的反向代理服務(wù)器,緩存、負(fù)載均衡;
    支持FastCGI (fpm);
    模塊化,非DSO機(jī)制,過濾器zip,SSI及圖像大小調(diào)整;
    支持SSL;
    非阻塞、事件驅(qū)動、一個(gè)master生成一個(gè)或多個(gè)worker, 每個(gè)worker響應(yīng)n個(gè)請求;

  擴(kuò)展功能:
    基于名稱和IP的虛擬主機(jī);
    支持keepalive
    支持平滑升級
    定制訪問日志 ,支持使用日志緩沖區(qū)提高日志存儲性能
    支持url rewrite
    支持路徑別名
    支持基于IP及用戶的訪問控制
    支持速率限制,支持并發(fā)數(shù)限制

  Nginx的基本架構(gòu):
    一個(gè)master進(jìn)程,生成一個(gè)或多個(gè)worker
    事件驅(qū)動: epoll, kqueue, /dev/poll (event ports)
      消息通知:select, poll, rt signals
    支持sendfile, sendfile64
    支持AIO
    支持mmap

  模塊類型:
    核心模塊
    Standard HTTP modules
    Optional HTTP modules
    Mail modules
     3rd party modules

三、Nginx的啟動、停止、配置文件重新裝載

1、啟動
  直接使用命令啟動,示例,-c后面跟上配置文件路徑及名字,如果忽略-c,則使用缺省的配置文件
  # /usr/sbin/nginx -c /etc/nginx/nginx.conf
  使用服務(wù)方式啟動,示例如下
  # service nginx start

2、啟動后的常用管理語法
  nginx -s signal
  其中signal可以為下列值
    stop — fast shutdown
    quit — graceful shutdown
    reload — reloading the configuration file
    reopen — reopening the log files

3、nginx的停止
  stop — 快速停止,粗暴模式,不再接受新請求,已經(jīng)處理的請求被強(qiáng)制關(guān)閉,示例如下
    # /usr/sbin/nginx -s stop
  quit — 優(yōu)雅停止,不再接受新請求,等待當(dāng)前的工作進(jìn)程完成當(dāng)前的服務(wù)器請求,并停止nginx
    # /usr/sbin/nginx -s quit
  通過服務(wù)方式關(guān)閉nginx
    # service nginx stop

4、配置文件重新裝載
  reload — 重新載入配置文件
    nginx配置文件的任意變更,不會被立即生效,需要使用重載命令或重啟nginx 
    一旦主進(jìn)程接收到重新加載配置的信號,它檢查新的配置文件的語法正確性,并嘗試應(yīng)用新的配置。
    否則,主進(jìn)程回滾所做的更改,并繼續(xù)使用舊的配置文件工作。
    舊的工作進(jìn)程,接收命令關(guān)閉, 停止接受新的連接,并繼續(xù)服務(wù)于當(dāng)前的請求,直至當(dāng)前請求服務(wù)完畢后,舊的工作進(jìn)程退出
    進(jìn)程信號可以被發(fā)送到nginx,通過Linux/Unix的 kill工具來殺死進(jìn)程。
    在這種情況下的帶有進(jìn)程ID的信號被直接發(fā)送到一個(gè)進(jìn)程。
    缺省情況下,nginx的主進(jìn)程PID被寫入到位于/usr/local/logs或者/var/run目錄的nginx.pid文件。
    例如,如果主進(jìn)程ID是1628,發(fā)送nginx正常關(guān)機(jī)的退出信號,則執(zhí)行:
    kill -s QUIT 1628

  通過服務(wù)方式重載配置文件
    # service nginx reload

四、Nginx配置文件結(jié)構(gòu)

1、配置說明
  a、nginx配置文件由不同模塊組成,通過模塊化的方式實(shí)現(xiàn)不同的功能。
  b、配置指令分為簡單指令和塊指令。一個(gè)簡單的指令,包括名稱,用空格分隔參數(shù),并用分號(;)結(jié)束。
  c、一個(gè)塊指令由一個(gè)或多個(gè)簡單具有相同的結(jié)構(gòu)簡單指令組合而成,使用一組用{}括號括起來表示塊結(jié)束。
  d、上下文:一個(gè)塊的指令包含有大括號其他指令,它被稱為上下文(例如:事件,HTTP,服務(wù)器,和位置)。
     放置在配置文件中的任何上下文以外的指令都被認(rèn)為是在主上下文。
  e、檢查配置文件語法: nginx -t  
  f、指定nginx要加載的配置文件:nginx -c  

2、配置文件構(gòu)成
  Nginx配置文件結(jié)構(gòu)主要由以下幾部分構(gòu)成。
  ......
  events  #Events用于配置IO模型,如epoll、kqueue、select或poll等,它們是必備模塊。
    {    
     ......
    }

  http       #http上下文專用于配置用于http的各模塊      
    {        #包括客戶端類指令,文件IO類指令,hash類指令,套接字類指令等 
     ......    
        server   #用于定義虛擬服務(wù)器相關(guān)的屬性,常見的指令有backlog、rcvbuf、bind及sndbuf等
        {
         ......
        }
        server
        {
         ......
        }
     ......    
     }  

3、基本的nginx.conf配置描述
# more /etc/nginx/nginx.conf

#user nobody;    #指定運(yùn)行worker進(jìn)程的用戶和組
worker_processes 1; #worker線程的個(gè)數(shù);通常應(yīng)該為物理CPU核心個(gè)數(shù)減1;

#error_log logs/error.log;    #配置錯(cuò)誤日志文件位置及日志記錄級別
#error_log logs/error.log notice;#可用于main、http、server及l(fā)ocation上下文中
#error_log logs/error.log info; #語法格式為error_log file |stderr [debug|info|notice|warn|error|crit|alert|emerg]

#pid    logs/nginx.pid;     #指定pid存放路徑  

events {
  worker_connections 1024; 每個(gè)worker進(jìn)程所能夠響應(yīng)的最大并發(fā)請求數(shù);
}

http {
  include    mime.types;
  default_type application/octet-stream;

  #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  #         '$status $body_bytes_sent "$http_referer" '
  #         '"$http_user_agent" "$http_x_forwarded_for"';
  #此部分用于設(shè)置訪問日志的格式及位置
  #access_log logs/access.log main;

  sendfile    on;  #文件發(fā)送
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65; #保持連接的超時(shí)時(shí)長,默認(rèn)為65s

  #gzip on;  #是否開啟gzip壓縮

  server {
    listen    80;    #定義監(jiān)聽的端口 Author:Leshami
    server_name localhost; #定義監(jiān)聽的主機(jī) Blog :http://blog.csdn.net/leshami

    #charset koi8-r;    #定義字符集

    #access_log logs/host.access.log main; #訪問日志文件存放路徑

    location / {   #location通常用于server上下文中,用于設(shè)定某URI的訪問屬性。location可以嵌套。 
      root  html; #默認(rèn)首頁文件位置,此處當(dāng)前為相對路徑,/etc/nginx/html
      index index.html index.htm; #首頁文件順序,如果找不到index.html,則找index.htm
    }

    #以下部分根據(jù)http狀態(tài)碼重定向錯(cuò)誤頁面
    #error_page 404       /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
}

五、獲取Nginx幫助

[root@wms ~]# nginx -h
nginx version: nginx/1.8.0
Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]

Options:
 -?,-h     : this help
 -v      : show version and exit
 -V      : show version and configure options then exit
 -t      : test configuration and exit
 -q      : suppress non-error messages during configuration testing
 -s signal   : send signal to a master process: stop, quit, reopen, reload
 -p prefix   : set prefix path (default: /etc/nginx/)
 -c filename  : set configuration file (default: /etc/nginx/nginx.conf)
 -g directives : set global directives out of configuration file

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • Nginx單向認(rèn)證的安裝配置方法

    Nginx單向認(rèn)證的安裝配置方法

    這篇文章主要介紹了Nginx單向認(rèn)證的安裝配置方法,需要的朋友可以參考下
    2014-11-11
  • Nginx訪問限制配置詳解

    Nginx訪問限制配置詳解

    nginx訪問限制可以基于兩個(gè)方面,一個(gè)是基于ip的訪問控制,另一個(gè)是基于用戶的信任登陸控制,本文就詳細(xì)的介紹了這兩種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • nginx代理轉(zhuǎn)發(fā)報(bào)錯(cuò)405?Method?Not?Allowed解決

    nginx代理轉(zhuǎn)發(fā)報(bào)錯(cuò)405?Method?Not?Allowed解決

    這篇文章主要為大家介紹了解決nginx代理轉(zhuǎn)發(fā)報(bào)錯(cuò)405?Method?Not?Allowed解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • 利用Nginx實(shí)現(xiàn)反向代理Node.js的方法詳解

    利用Nginx實(shí)現(xiàn)反向代理Node.js的方法詳解

    這篇文章主要給大家介紹了關(guān)于利用Nginx實(shí)現(xiàn)反向代理Node.js的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • Tomcat請求處理在源碼中的輪轉(zhuǎn)解析

    Tomcat請求處理在源碼中的輪轉(zhuǎn)解析

    這篇文章主要為大家介紹了Tomcat請求處理在源碼中的輪轉(zhuǎn)解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • 在CentOS?7上使用Nginx將www重定向到非www的完整步驟

    在CentOS?7上使用Nginx將www重定向到非www的完整步驟

    本文介紹了如何在CentOS7上使用Nginx進(jìn)行域名重定向配置,以及設(shè)置相應(yīng)的DNS記錄,重定向不僅有助于提高網(wǎng)站的搜索引擎排名,還能確保用戶無論通過www還是非www域名訪問,都能獲得一致的網(wǎng)站體驗(yàn),需要的朋友可以參考下
    2024-11-11
  • 詳解Nginx之Location配置(Location匹配順序)

    詳解Nginx之Location配置(Location匹配順序)

    這篇文章主要介紹了詳解Nginx之Location配置(Location匹配順序),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • nginx 自定義 404、50x 錯(cuò)誤頁面的實(shí)現(xiàn)

    nginx 自定義 404、50x 錯(cuò)誤頁面的實(shí)現(xiàn)

    本文主要介紹了nginx 自定義 404、50x 錯(cuò)誤頁面的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • Nginx中proxy_pass使用小結(jié)

    Nginx中proxy_pass使用小結(jié)

    本文詳細(xì)介紹了Nginx中proxy_pass指令的基本用法、配置示例及高級用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • 如何利用map實(shí)現(xiàn)Nginx允許多個(gè)域名跨域

    如何利用map實(shí)現(xiàn)Nginx允許多個(gè)域名跨域

    這篇文章主要給大家介紹了關(guān)于如何利用map實(shí)現(xiàn)Nginx允許多個(gè)域名跨域的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10

最新評論

浦江县| 宣城市| 东方市| 仙游县| 吉安县| 龙口市| 罗源县| 武功县| 鸡东县| 霍州市| 贺兰县| 广灵县| 双辽市| 肃宁县| 平阳县| 内丘县| 九江县| 凤台县| 蒙阴县| 漳州市| 东乌| 深水埗区| 徐闻县| 康定县| 潼南县| 南漳县| 黄石市| 辉县市| 海安县| 射洪县| 石台县| 县级市| 广汉市| 新竹县| 武平县| 思茅市| 肥城市| 土默特右旗| 双柏县| 静宁县| 老河口市|