Nginx配置文件釋義備查

  1 ##
  2 
  3 user nginx;                   # 定義Nginx運行的用戶和用戶組
  4 worker_processes auto;        # nginx進程數,建議設置爲等於CPU總核心數
  5 error_log /var/log/nginx/error.log;      # 全局錯誤日誌定義類型,[ debug | info | notice | warn | error | crit ]
  6 pid /run/nginx.pid;               # 進程文件
  7 
  8 include /usr/share/nginx/modules/*.conf;
  9 
 10 worker_rlimit_nofile 65535;      # 一個nginx進程打開的最多文件描述符數目,理論值應該是最多打開文件數(系統的值ulimit -n)與nginx進程數相除,可是nginx分配請求並不均勻,因此建議與ulimit -n的值保持一致
 11 
 12 events {
 13     use epoll;             # 參考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; 
 14     worker_connections 1024;     # 單個進程最大鏈接數(最大鏈接數=鏈接數*進程數)
 15 }
 16 
 17 http {
 18         include             /etc/nginx/mime.types;        # 文件擴展名與文件類型映射表
 19         log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
 20                       '$status $body_bytes_sent "$http_referer" '
 21                       '"$http_user_agent" "$http_x_forwarded_for"';
 22         access_log  /var/log/nginx/access.log  main;    # 日誌格式設定定義本虛擬主機的訪問日誌
 23         
 24         default_type        application/octet-stream;      # 默認文件類型
 25         #charset utf-8;        #  默認編碼
 26         server_names_hash_bucket_size 128;             #   服務器名字的hash表大小
 27         client_header_buffer_size 32k;                       #  上傳文件大小限制 
 28         large_client_header_buffers 4 64k;              #  設定請求緩
 29         client_max_body_size 8m;                          # 設定請求緩
 30         sendfile on;        #開啓高效文件傳輸模式,sendfile指令指定nginx是否調用sendfile函數來輸出文件,對於普通應用設爲 on,若是用來進行下載等應用磁盤IO重負載應用,可設置爲off,以平衡磁盤與網絡I/O處理速度,下降系統的負載。注意:若是圖片顯示不正常把這個改爲off
 31         autoindex on;    #開啓目錄列表訪問,合適下載服務器,默認關閉
 32         tcp_nopush on;      #防止網絡阻塞
 33         tcp_nodelay on;      #防止網絡阻塞
 34         keepalive_timeout 120;         #長鏈接超時時間,單位是秒
 35         
 36         # FastCGI相關參數是爲了改善網站的性能:減小資源佔用,提升訪問速度。下面參數看字面意思都能理解
 37         fastcgi_connect_timeout 300;
 38         fastcgi_send_timeout 300;
 39         fastcgi_read_timeout 300;
 40         fastcgi_buffer_size 64k;
 41         fastcgi_buffers 4 64k;
 42         fastcgi_busy_buffers_size 128k;
 43         fastcgi_temp_file_write_size 128k;
 44         # gzip模塊設置
 45         gzip on;          #開啓gzip壓縮輸出
 46         gzip_min_length 1k;       #最小壓縮文件大小
 47         gzip_buffers 4 16k;       #壓縮緩衝區
 48         gzip_http_version 1.0;    #壓縮版本
 49         gzip_comp_level 2;        #壓縮等級
 50         gzip_types text/plain application/x-javascript text/css application/xml;     # 壓縮類型,默認就已經包含text/html,因此下面就不用再寫了
 51         gzip_vary on;
 52         #limit_zone crawler $binary_remote_addr 10m;  # 開啓限制IP鏈接數的時候須要使用
 53         upstream edu_test.com {
 54         # upstream的負載均衡,weight是權重,能夠根據機器配置定義權重。weigth參數表示權值,權值越高被分配到的概率越大
 55                 server 192.168.80.121:80 weight=3;
 56                 server 192.168.80.122:80 weight=2;
 57                 server 192.168.80.123:80 weight=3;
 58         }
 59 
 60         server {
 61         # 虛擬主機的配置
 62                 listen 80;        #   監聽端口
 63                 server_name edu-1.com edu-2.com;   # #域名能夠有多個,用空格隔開
 64                 index index.html index.htm index.php;
 65                 root /data/www/edu;
 66                 location ~ .*\.(php|php5)?$ {
 67                         fastcgi_pass 127.0.0.1:9000;
 68                         fastcgi_index index.php;
 69                         include fastcgi.conf;
 70                 }
 71                  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
 72                  # 圖片緩存時間設置
 73                          expires 10d;
 74                 }
 75                 location ~ .*\.(js|css)?$ {
 76                 # JS和CSS緩存時間設置
 77                         expires 1h;
 78                 }
 79 
 80                 location / {
 81                 對 "/" 啓用反向代理
 82                         proxy_pass http://127.0.0.1:88;
 83                         proxy_redirect off;
 84                         proxy_set_header X-Real-IP $remote_addr;  # 後端的Web服務器能夠經過X-Forwarded-For獲取用戶真實IP
 85                         proxy_set_header X-Forwarded-For 
 86                         $proxy_add_x_forwarded_for;
 87                         # 如下是一些反向代理的配置,可選。
 88                         proxy_set_header Host $host;
 89                         client_max_body_size 10m;          #容許客戶端請求的最大單文件字節數
 90                         client_body_buffer_size 128k;        #緩衝區代理緩衝用戶端請求的最大字節數,
 91                         proxy_connect_timeout 90;         #nginx跟後端服務器鏈接超時時間(代理鏈接超時)
 92                         proxy_send_timeout 90;           #後端服務器數據回傳時間(代理髮送超時)
 93                         proxy_read_timeout 90;          #鏈接成功後,後端服務器響應時間(代理接收超時)
 94                         proxy_buffer_size 4k;          #設置代理服務器(nginx)保存用戶頭信息的緩衝區大小
 95                         proxy_buffers 4 32k;          #proxy_buffers緩衝區,網頁平均在32k如下的設置
 96                         proxy_busy_buffers_size 64k;          #高負荷下緩衝大小(proxy_buffers*2)
 97                         proxy_temp_file_write_size 64k;          #設定緩存文件夾大小,大於這個值,將從upstream服務器傳
 98                 }
 99                 location /NginxStatus {
100                 # 設定查看Nginx狀態的地址
101                         stub_status on;
102                         access_log on;
103                         auth_basic "NginxStatus";
104                         auth_basic_user_file conf/htpasswd;
105                         #htpasswd文件的內容能夠用apache提供的htpasswd工具來產生。
106                 }
107                 #本地動靜分離反向代理配置
108                 #全部jsp的頁面均交由tomcat或resin處理
109                 location ~ .(jsp|jspx|do)?$ {
110                         proxy_set_header Host $host;
111                         proxy_set_header X-Real-IP $remote_addr;
112                         proxy_set_header X-Forwarded-For 
113                         $proxy_add_x_forwarded_for;
114                         proxy_pass http://127.0.0.1:8080;
115                 }
116                 #全部靜態文件由nginx直接讀取不通過tomcat或resin
117                 location ~ .*.
118  (htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
119                         { expires 15d; }
120                         location ~ .*.(js|css)?$
121                         { expires 1h; }
122                 }
123         }124 }
相關文章
相關標籤/搜索