成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

nginx配置文件結(jié)構(gòu)

miya / 3416人閱讀

摘要:腳本請(qǐng)求全部轉(zhuǎn)發(fā)到處理使用默認(rèn)配置禁止訪問(wèn)文件則只匹配該規(guī)則,停止搜索其他匹配,否則會(huì)繼續(xù)處理其他指令。匹配任何以開(kāi)始的請(qǐng)求,并停止匹配其它表示執(zhí)行一個(gè)正則匹配,不區(qū)分大小寫(xiě)匹配以結(jié)尾的請(qǐng)求但是所有目錄的請(qǐng)求將由處理基本配置與參數(shù)說(shuō)明

nginx配置文件結(jié)構(gòu)

配置實(shí)例
#運(yùn)行用戶
user nobody;
#啟動(dòng)進(jìn)程,通常設(shè)置成和cpu的數(shù)量相等
worker_processes  1;

#全局錯(cuò)誤日志及PID文件
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

#工作模式及連接數(shù)上限
events {
    #epoll是多路復(fù)用IO(I/O Multiplexing)中的一種方式,
    #僅用于linux2.6以上內(nèi)核,可以大大提高nginx的性能
    use   epoll;

    #單個(gè)后臺(tái)worker process進(jìn)程的最大并發(fā)鏈接數(shù)
    worker_connections  1024;

    # 并發(fā)總數(shù)是 worker_processes 和 worker_connections 的乘積
    # 即 max_clients = worker_processes * worker_connections
    # 在設(shè)置了反向代理的情況下,max_clients = worker_processes * worker_connections / 4  為什么
    # 為什么上面反向代理要除以4,應(yīng)該說(shuō)是一個(gè)經(jīng)驗(yàn)值
    # 根據(jù)以上條件,正常情況下的Nginx Server可以應(yīng)付的最大連接數(shù)為:4 * 8000 = 32000
    # worker_connections 值的設(shè)置跟物理內(nèi)存大小有關(guān)
    # 因?yàn)椴l(fā)受IO約束,max_clients的值須小于系統(tǒng)可以打開(kāi)的最大文件數(shù)
    # 而系統(tǒng)可以打開(kāi)的最大文件數(shù)和內(nèi)存大小成正比,一般1GB內(nèi)存的機(jī)器上可以打開(kāi)的文件數(shù)大約是10萬(wàn)左右
    # 我們來(lái)看看360M內(nèi)存的VPS可以打開(kāi)的文件句柄數(shù)是多少:
    # $ cat /proc/sys/fs/file-max
    # 輸出 34336
    # 32000 < 34336,即并發(fā)連接總數(shù)小于系統(tǒng)可以打開(kāi)的文件句柄總數(shù),這樣就在操作系統(tǒng)可以承受的范圍之內(nèi)
    # 所以,worker_connections 的值需根據(jù) worker_processes 進(jìn)程數(shù)目和系統(tǒng)可以打開(kāi)的最大文件總數(shù)進(jìn)行適當(dāng)?shù)剡M(jìn)行設(shè)置
    # 使得并發(fā)總數(shù)小于操作系統(tǒng)可以打開(kāi)的最大文件數(shù)目
    # 其實(shí)質(zhì)也就是根據(jù)主機(jī)的物理CPU和內(nèi)存進(jìn)行配置
    # 當(dāng)然,理論上的并發(fā)總數(shù)可能會(huì)和實(shí)際有所偏差,因?yàn)橹鳈C(jī)還有其他的工作進(jìn)程需要消耗系統(tǒng)資源。
    # ulimit -SHn 65535

}


http {
    #設(shè)定mime類(lèi)型,類(lèi)型由mime.type文件定義
    include    mime.types;
    default_type  application/octet-stream;
    #設(shè)定日志格式
    log_format  main  "$remote_addr - $remote_user [$time_local] "$request" "
    "$status $body_bytes_sent "$http_referer" "
    ""$http_user_agent" "$http_x_forwarded_for"";

    access_log  logs/access.log  main;

    #sendfile 指令指定 nginx 是否調(diào)用 sendfile 函數(shù)(zero copy 方式)來(lái)輸出文件,
    #對(duì)于普通應(yīng)用,必須設(shè)為 on,
    #如果用來(lái)進(jìn)行下載等應(yīng)用磁盤(pán)IO重負(fù)載應(yīng)用,可設(shè)置為 off,
    #以平衡磁盤(pán)與網(wǎng)絡(luò)I/O處理速度,降低系統(tǒng)的uptime.
    sendfile     on;
    #tcp_nopush     on;

    #連接超時(shí)時(shí)間
    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay     on;

    #開(kāi)啟gzip壓縮
    gzip  on;
    gzip_disable "MSIE [1-6].";

    #設(shè)定請(qǐng)求緩沖
    client_header_buffer_size    128k;
    large_client_header_buffers  4 128k;


    #設(shè)定虛擬主機(jī)配置
    server {
        #偵聽(tīng)80端口
        listen    80;
        #定義使用 www.nginx.cn訪問(wèn)
        server_name  www.nginx.cn;

        #定義服務(wù)器的默認(rèn)網(wǎng)站根目錄位置
        root html;

        #設(shè)定本虛擬主機(jī)的訪問(wèn)日志
        access_log  logs/nginx.access.log  main;

        #默認(rèn)請(qǐng)求,優(yōu)先級(jí)最低的匹配
        location / {
            # 匹配任何請(qǐng)求,因?yàn)樗姓?qǐng)求都是以"/"開(kāi)始
            # 但是更長(zhǎng)字符匹配或者正則表達(dá)式匹配會(huì)優(yōu)先匹配
            #定義首頁(yè)索引文件的名稱(chēng)
            index index.php index.html index.htm;

        }

        #1. = 精確匹配會(huì)第一個(gè)被處理。如果發(fā)現(xiàn)精確匹配,nginx停止搜索其他匹配。
        location  = / {
            # 只匹配"/".
        }

        # 定義錯(cuò)誤提示頁(yè)面
        error_page   500 502 503 504 /50x.html;
        location = /50x.html {
        }

        #靜態(tài)文件,nginx自己處理
        #2.波浪線表示執(zhí)行一個(gè)正則匹配,區(qū)分大小寫(xiě)
        location ~ ^/(images|javascript|js|css|flash|media|static)/ {

            #過(guò)期30天,靜態(tài)文件不怎么更新,過(guò)期可以設(shè)大一點(diǎn),
            #如果頻繁更新,則可以設(shè)置得小一點(diǎn)。
            expires 30d;
        }

        #PHP 腳本請(qǐng)求全部轉(zhuǎn)發(fā)到 FastCGI處理. 使用FastCGI默認(rèn)配置.
        location ~ .php$ {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include fastcgi_params;
        }

        #禁止訪問(wèn) .htxxx 文件
        location ~ /.ht {
            deny all;
        }

        #3.^~ 則只匹配該規(guī)則,nginx停止搜索其他匹配,否則nginx會(huì)繼續(xù)處理其他location指令。
        location ^~ /images/ {
            # 匹配任何以 /images/ 開(kāi)始的請(qǐng)求,并停止匹配 其它location
            #[Configuration C]
        }

        #4.~*    #表示執(zhí)行一個(gè)正則匹配,不區(qū)分大小寫(xiě)
        location ~* .(gif|jpg|jpeg)$ {
            # 匹配以 gif, jpg, or jpeg結(jié)尾的請(qǐng)求.
            # 但是所有 /images/ 目錄的請(qǐng)求將由 [Configuration C]處理.
        }
    }
}
doc

nginx基本配置與參數(shù)說(shuō)明

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/39370.html

相關(guān)文章

  • Nginx源碼分析】Nginx配置文件解析(一)

    摘要:本文將從源碼從此深入分析配置文件的解析,配置存儲(chǔ),與配置查找。在學(xué)習(xí)配置文件的解析過(guò)程之前,需要先了解一下模塊與指令的一些基本知識(shí)。 運(yùn)營(yíng)研發(fā)團(tuán)隊(duì) 李樂(lè) 配置文件是nginx的基礎(chǔ),對(duì)于學(xué)習(xí)nginx源碼甚至開(kāi)發(fā)nginx模塊的同學(xué)來(lái)說(shuō)更是必須深究。本文將從源碼從此深入分析nginx配置文件的解析,配置存儲(chǔ),與配置查找。 看本文之前讀者可以先思考兩個(gè)問(wèn)題: 1.nginx源碼中隨處可以...

    JasonZhang 評(píng)論0 收藏0
  • Nginx 源碼分析:從模塊到配置(下)

    摘要:每個(gè)模塊由以下幾部分構(gòu)成結(jié)構(gòu)體代表模塊本身,其指針被放入數(shù)組中。結(jié)構(gòu)體用來(lái)表示模塊的配置內(nèi)容,其中部分成員可以通過(guò)配置文件進(jìn)行配置。調(diào)用該中的函數(shù),該函數(shù)最終初始化模塊對(duì)應(yīng)的結(jié)構(gòu)體,完成配置。因此,分析源碼中的配置指令,就是分析結(jié)構(gòu)體。 本篇的上篇 Nginx 源碼分析:從模塊到配置(上),建議閱讀本篇前先閱讀上篇。 關(guān)于模塊 Nginx的架構(gòu)高度模塊化。每個(gè)模塊各司其職,組合在一...

    Chao 評(píng)論0 收藏0
  • nginx架構(gòu)

    摘要:反向代理反向代理反向代理負(fù)載均衡鑒權(quán)限流等邏輯架構(gòu)在邏輯上分為入口層,模塊化的功能處理層,系統(tǒng)調(diào)用層。多個(gè)共同監(jiān)聽(tīng)事件并處理,反向代理會(huì)把請(qǐng)求轉(zhuǎn)發(fā)給后端服務(wù)。 一.概述 本文將深入剖析nginx的架構(gòu)。 第一部分介紹nginx現(xiàn)有框架,用典型的4+1視圖闡述,包括邏輯架構(gòu),開(kāi)發(fā)架構(gòu),運(yùn)行架構(gòu),物理架構(gòu),功能用例,nginx為單機(jī)服務(wù),不考慮物理架構(gòu)。其中功能用例概述nginx功能;邏輯...

    smartlion 評(píng)論0 收藏0
  • nginx架構(gòu)

    摘要:反向代理反向代理反向代理負(fù)載均衡鑒權(quán)限流等邏輯架構(gòu)在邏輯上分為入口層,模塊化的功能處理層,系統(tǒng)調(diào)用層。多個(gè)共同監(jiān)聽(tīng)事件并處理,反向代理會(huì)把請(qǐng)求轉(zhuǎn)發(fā)給后端服務(wù)。 一.概述 本文將深入剖析nginx的架構(gòu)。 第一部分介紹nginx現(xiàn)有框架,用典型的4+1視圖闡述,包括邏輯架構(gòu),開(kāi)發(fā)架構(gòu),運(yùn)行架構(gòu),物理架構(gòu),功能用例,nginx為單機(jī)服務(wù),不考慮物理架構(gòu)。其中功能用例概述nginx功能;邏輯...

    fuyi501 評(píng)論0 收藏0
  • Nginx 源碼分析:從模塊到配置(上)

    摘要:結(jié)構(gòu)體數(shù)組,用來(lái)表示該模塊可以在配置文件中配置的項(xiàng)目,及其操作指令。 源文件路徑 srccore gx_conf_file.h srccore gx_conf_file.c 主要內(nèi)容 本篇的主要目的在于分析Nginx的配置功能。由于Nginx的配置基本就是對(duì)模塊的配置,因此,在討論配置功能之前,需要先分析Nginx的模塊功能。 對(duì)于模塊功能,這里的重點(diǎn)不在于某個(gè)模塊的細(xì)節(jié),而...

    gotham 評(píng)論0 收藏0
  • 不再依靠巧合編寫(xiě) Nginx 配置

    摘要:找到這個(gè)模塊的指令后,則會(huì)調(diào)用這個(gè)指令的解析回調(diào)函數(shù)即結(jié)構(gòu)體的第三個(gè)參數(shù)來(lái)進(jìn)行處理。調(diào)用他們上面提到的中的回調(diào)函數(shù)來(lái)申請(qǐng)和初始化對(duì)應(yīng)模塊的配置結(jié)構(gòu)體。需要注意的是,即時(shí)當(dāng)前是直接在塊級(jí)別,這三個(gè)回調(diào)函數(shù)都會(huì)被調(diào)用。拒絕暴力枚舉式編寫(xiě)配置文件 原博:https://blog.coordinate35.cn/... 熱身 首先來(lái)看下這幾個(gè)小例子: 第一個(gè)例子: server { l...

    tulayang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

miya

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<