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 65;
#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 808;
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 30;
# 如过加载的是数据量较大的报表,页面会很慢,参数需要设置大一点(很重要)
proxy_read_timeout 60;
proxy_send_timeout 60;
proxy_buffer_size 256k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_max_temp_file_size 128m;
client_max_body_size 50m;
client_body_buffer_size 256k;
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 1m;
if ($slow) {
#对请求的限速 默认为0 不限速
set $limit_rate 4k;
}
limit_rate $limit_rate;
alias D:/file/个人/图片/;
}
location /upload/ {
#HTTP请求包体的最大值
client_max_body_size 1m;
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 500 502 503 504 /50x.html;
location = /50x.html {
#inernal;#内部访问
root html;
}
# 静态资源获取(~*不区分大小写 ~为区分大小写)
location ~* \.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|ttf)$ {
root D:/software/MyEclipse-2014/Project/tjhy;
}
#错误重定向到另外一个location
location / (
error_page 404 @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;
# }
#}
}