nginx.conf配置文件詳解

本篇博客參考了網絡上的一些博文,並結合本身的使用經驗和理解,現把nginx的配置文件的參數說明下javascript

use nginx nginx;                               #運行nginx進程的用戶和組css

worker_processes 1;                   #nginx worker進程數,建議爲cpu總核心數或者總核心數減1html

error_log  logs/error.log  info;                #全局錯誤日誌設置前端

pid     logs/nginx.pid;                         #設定nginx pid文件java

events {nginx

    use epoll;                                  #設置nginx I/O模型服務器

    worker_connections  1024;                   #單個進程最大鏈接數網絡

}app

http {負載均衡

    include   mime.types;        # 文件擴展名與文件類型映射表

    default_type  application/octet-stream;     #默認文件類型

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ';   #日誌格式

    access_log  logs/access.log  main;

    charset utf-8;                                  #默認編碼

    server_names_hash_bucket_size 128;              #服務器名字的hash表大小
    client_header_buffer_size 32k;                   #上傳文件大小限制
    large_client_header_buffers 4 64k;               #設定請求緩衝大小
    client_max_body_size 8m;                         #設定請求緩衝大小

    sendfile  on;   #開啓高效文件傳輸模式,sendfile指令指定nginx是否調用sendfile函數來輸出     文件,對於普通應用設爲 on,若是用來進行下載等應用磁盤IO重負載應用,可設置爲off,以平衡     磁盤與網絡I/O處理速度,下降系統的負載。注意:若是圖片顯示不正常把這個改爲off

    tcp_nopush  on;     #防止網絡阻塞

    keepalive_timeout  65;   #長鏈接超時時長,單位爲秒

    #FastCGI相關參數是爲了改善網站的性能,減小資源佔用,提升訪問速度

    fastcgi_connect_timeout 300;           #fastcgi鏈接超時時長

    fastcgi_send_timeout 300;              #fastcgi發送請求超時時長

    fastcgi_read_timeout 300;              #fastcgi讀取響應超時時長

    fastcgi_buffer_size 64k;               #讀取響應第一部分緩衝大小

    fastcgi_buffers 4 64k;                 #讀取響應緩衝大小

    fastcgi_busy_buffers_size 128k;        #不知道怎麼翻譯

    fastcgi_temp_file_write_size 128k;     #數據寫入臨時文件的大小

    gzip  on;                  #開啓gzip壓縮功能

    gzip_min_length 1k;        #最小壓縮文件大小

    gzip_buffers 4 16k;        #壓縮緩衝區

    gzip_http_version 1.0;     #壓縮版本(默認1.1,前端若是是squid2.5請使用1.0)

    gzip_comp_level 2;         #壓縮等級

    gzip_types text/plain application/x-javascript text/css application/xml;   #壓縮類型

    gzip_vary on;              #啓用插入不一樣編碼響應首部

    #定義uptream 負載均衡

    upstream test {

       server 192.168.1.2:80 weigth=1;      #weight表示權重

       server 192.168.1.3:80 weight=2;

    }

    #定義虛擬主機

    server {

        listen       80;               #監聽端口

        server_name  localhost;        #主機名

        location / {

            root   html;              #文檔路徑

            index  index.html index.htm;        #默認主頁面

        }

        location /NginxStatus {         #定義nginx狀態頁

            stub_status on;        

            access_log on;

            auth_basic "NginxStatus";

            auth_basic_user_file confpasswd;

        }   

        location ~ .(jsp|jspx|do)?$ {       #動靜內容分離

            proxy_set_header Host $host;

            proxy_set_header X-Real-IP $remote_addr;

            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_pass http://test;      #動態內容所有由upstream主機處理

        }

        location ~ .*.             #靜態內容由nginx處理 (htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$

       { 

            expires 15d; 

        }

        location ~ .*.(js|css)?$

       {

            expires 1h; 

        }

        

     }

相關文章
相關標籤/搜索