nginx相關配置及解釋

全局配置:

user  nginx nginx; #運行程序的用戶和用戶組
pid      /var/run/nginx.pid; #主控進程
load_module /usr/lib64/nginx/modules/ngx_http_geoip_module.so;#加載模塊

work進程的數量:通常為當前主機cpu的物理核心數

worker_processes 2;

綁定cpu

worker_cpu_affinity 01 10;

00000001 00000010 00000100 00001000 00010000 00100000 0100000 1000000

指定worker進程的nice值,設定worker進程優先級;[-20,20]

worker_priority -5;

如2w并發,則設置大于2w并發個

worker進程所能夠打開的文件數的上線

worker_rlinit_nofile 25000;

錯誤日志設置位置及級別

error_log /var/log/ngixn/error.log warn;

事件驅動相關的配置

events {
    
    #增加連接數
    worker_connections 1024;

    #指明并發連接請求的處理方法,默認就好,不必單獨指定
    #use epoll;

    #處理新的連接請求的方法;on意味著由各worker輪流處理新請求,Off意味著每個新請求的到達都會通知所有的worker進程:默認
    #accept_mutex on

}

各http協議相關公共配置

http {

    include /etc/nginx/conf.d/*.conf; #擴展程序模塊化3

    #如果是后端服務器,則這樣配置允許內網訪問,拒絕外網用戶訪問;
    allow 192.168.1.0/24;
    deny  all;

虛擬主機配置(可配置多個):
    server {
        #定義監聽端口;
        listen 8080;
        #定義主機名;
        server_name _;

        aio            on;
        directio       512;
        output_buffers 1 32k;

    #定義保持連接的超時時長,0表示禁止長連接;默認為75s;
    keepalive_timeout 60;

    #定義一次長連接上所允許請求的資源的最大數量,默認為100;
    keepalive_request 10;

    #向客戶端發送響應報文的超時時長
    send_timeout 5;

    #用于接收客戶端請求報文的body部分的緩沖區大?。荒J為16k;
    client_body_buffer_size 32k;

    #設定用于存儲客戶端請求報文的body部分的臨時存儲路徑及子目錄結構和數量;建議臨時存儲的路徑在固態硬盤上即/var/tmp/client_body
    client_body_temp_path path  /var/tmp/client_body  2 1 1

    #定義主頁        
        location /    {
            index index.html;
            root /data/www;
        }
    #location定義的根(root)路徑位于是/data/www/images;
        location /images/ {
        root /data/www/;
        }
    #location定義的根(alias)路徑位于/data/images下;
        location /images/ {
            alias /data/www/;
            }

        #定義訪問控制,需要帳號密碼控制
        location /admin/ {
                            alias alias /data/www/;
                        #定義提示名稱
                            auth_basic “Admin Area”;
                        #密碼存放路徑;由httpd-tools提供;
                            auth_basic_user_file /etc/nginx/.ngxpasswd;
                        }

        #                
        location /nginxbasic_status {
                            stub_status;
                        #定義提示
                            auth_basic “Admin Area”;
                        #密碼存放路徑;由httpd-tools提供;
                            auth_basic_user_file /etc/nginx/.ngxadminpasswd;
                        }

        #定義php文件交由127.0.0.1:9000處理    
        location ~ .php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            #fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name; //給出文件的真實路徑
            include        fastcgi_params;
        }
        #自定義錯誤頁并重定義錯誤碼
        error_page  404              /404.html;
        #error_page 404 = 200  https://www.baidu.com;

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /data/www/html;
        }
    }
}

原創文章,作者:chenbin,如若轉載,請注明出處:http://www.www58058.com/74959

(0)
chenbinchenbin
上一篇 2017-05-07 21:09
下一篇 2017-05-07 22:09

相關推薦

  • 文本編輯器—sed

    一、sed介紹 sed 一種流式編輯器。一個流式編輯器通常對來自輸入流(一個文件或者是管道的輸入)的文本進行轉換處理。在某些方面類似支持腳本編輯的編輯器,sed在多輸入情況下只開放一個通道工作,因此更加效率。sed與其他編輯器最大的區別在于,能對管道輸入的文本進行過濾處理。 二、sed工作機制 sed保持兩個數據緩沖區:主要活動的模式空間,以及輔助性的保持空…

    Linux干貨 2016-08-12
  • Shell腳本編程3

    Shell腳本編程3  一、雜項知識整理 1、select與case select是個無限循環,因此要記住用break命令退出循環,或用exit命令終止腳本。也可以按ctrl+c退出循環,自動生成數字的選擇項,適合創建菜單。 select經常和case聯合使用。與for循環類似,可以省略in LIST,此時使用位置參量$1、$2等傳遞參數。 cas…

    Linux干貨 2016-08-19
  • sed基本用法

    Stream EDitor, 行編輯器  sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space), 接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。然后讀入下行,執行下一個循環。如果沒有使諸如‘D’的特殊命令, 那會在兩個循環之間清空模式空間,但不會…

    Linux干貨 2017-08-20
  • lvs——特殊的lvs-dr模型

    lvs-dr模型中:vip與dip/rip不在同一網段的實驗環境設計及配置實現 實驗拓撲: 提示:在路由器的內網IP接口上配置一個別名IP,此IP同VIP在同一網段 設計要點: VS上的VIP地址可以直接配置在DIP地址所在的網卡上,Linux主機上,一塊網卡可以配置多個地址 RS上的VIP地址必須配置在lo接口上,并且還要關閉arp的響應和通告功能 外網接…

    Linux干貨 2016-10-26
  • 標準I/O和管道

    程序包含指令和數據,經常需要讀入數據和輸出數據 打開的文件都有一個fd:file descriptor(文件描述符) 用nano打開一個文件,查看其PID  0,1,2就是所謂的文件描述符。 在Linux里輸入輸出和錯誤都由這三個描述符來表示 標準輸入(STDIN) -0 默認接受來自鍵盤的輸入 標準輸出(STDOUT)-1 默認輸出到終端窗口 標…

    Linux干貨 2016-08-08
欧美性久久久久