nginx.conf配置模闆
#user nobody;#指定運作的使用者,Linux最好不要使用root使用者啟動,window環境不需要配置
#error_log logs/error.log;#預設日志輸入路徑,可以更改
#error_log /dev/null crit;#禁用error_log日志方法
#error_log logs/error.log notice;#指定輸出日志級别,可以使用預設級别
#error_log logs/error.log info;
#Linux環境核心轉儲檔案大小,win沒有該配置
#worker_rlimit_core 1000m;
#Linux核心轉儲檔案位置
# working_directory /usr/local/nginx/logs;
#pid logs/nginx.pid;
#定義環境變量(Linux配置)
#env TESTPATH=/tmp/;
#綁定核心
# worker_processes 4;
# worker_cpu_affinity 1000 0100 0010 0001;
#使用epoll機制,Linux配置
# events {
# use epoll;
# worker_connections 1024;
# }
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"';
#access_log logs/access.log main;
#access_log off;#禁止通路日志
#使用啟動高效傳輸檔案的模式,直接在磁盤和tcp socket之間傳輸資料,繞開buffer,Linux配置。
sendfile on;
#啟用不等待模式,配合sendfile一起用,Linux配置
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout ;
#gzip on;
#配置負載均衡
# upstream www.eakom.com {
# ip_hash
# server 10.10.11.150:8888 weight=2;
#轉發失敗3次,30S内不可用
# server 10.10.11.150:8080 weight=5 max_fails=3 fail_timeout=30s;
# server 10.10.12.28:8888 backup; #備用伺服器
# }
server {
listen ;
server_name localhost;
#charset koi8-r;
#啟用Linux上的sendfile系統調用來發送檔案,它減少了核心态與使用者态之間的兩次記憶體複制,
#這樣就會從磁盤中讀取檔案後直接在核心态發送到網卡裝置,提高了發送檔案的效率(小檔案)
sendfile on;
#大檔案
aio off;
#access_log logs/host.access.log main;
location =/{
#配置負載均衡
#指定反向代理為上面配置的那個upstream節點“www.eakom.com”
proxy_pass http://www.eakom.com;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_404;
# #連結超過一秒馬上連結另一個連結 ,如果一台tomcat崩潰,該配置就很重要
proxy_connect_timeout ;
# 如過加載的是資料量較大的報表,頁面會很慢,參數需要設定大一點(很重要)
proxy_read_timeout ;
proxy_send_timeout ;
proxy_buffer_size k;
proxy_buffers k;
proxy_busy_buffers_size k;
proxy_temp_file_write_size k;
proxy_max_temp_file_size m;
client_max_body_size m;
client_body_buffer_size k;
root html;
index index.html index.htm;
}
#指向固定檔案夾 D:/software/Project/hh/views
location =/views{
root D:/software/Project/hh;
autoindex on;#張開目錄
}
#指向D:/file/個人/圖檔/路徑
location /down/ {
#響應長度超過1M後限速
limit_rate_after m;
if ($slow) {
#對請求的限速 預設為0 不限速
set $limit_rate k;
}
limit_rate $limit_rate;
alias D:/file/個人/圖檔/;
}
location /upload/ {
#HTTP請求包體的最大值
client_max_body_size m;
proxy_pass http://backend;
}
location ~ ^/download/(.*)$ { #正規表達式并傳參
alias D:/file/個人/圖檔/$1;#路徑别名
}
location /{
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page /x.html;
location = /x.html {
#inernal;#内部通路
root html;
}
# 靜态資源擷取(~*不區分大小寫 ~為區分大小寫)
location ~* \.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|ttf)$ {
root D:/software/MyEclipse-/Project/tjhy;
}
#錯誤重定向到另外一個location
location / (
error_page @fallback;
)
location @fallback (
proxy_pass http://backend;
)
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
}