Nginx的配置说明 Test

 

#Nginx所用用户和组,window下不指定 
#user niumd niumd;

#工作的子进程数量(通常等于CPU数量或者2倍于CPU)
#user nobody;
worker_processes 1;

#错误日志存放路径
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;


#指定pid存放文件
#pid logs/nginx.pid;

#工作模式及连接数上限
events {
#使用网络IO模型linux建议epoll,FreeBSD建议采用kqueue,window下不指定。 
#use epoll; 

#允许最大连接数
worker_connections 1024;
}

#遵循http协议的服务器全局设置
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;

#开启高效传输模式 
sendfile on;

#激活tcp_nopush参数可以允许把httpresponse header和文件的开始放在一个文件里发布,积极的作用是减少网络报文段的数量
#tcp_nopush on;

#连接超时时间,单位是秒
#keepalive_timeout 0;
keepalive_timeout 65;

#开启gzip压缩功能
#gzip on;

# ssl 相关配置 ...

map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

upstream myCluster {#服务器集群名字 
#根据ip计算将请求分配各那个后端tomcat,许多人误认为可以解决session问题,其实并不能。 
#同一机器在多网情况下,路由切换,ip可能不同 
#ip_hash;
server 10.10.10.10:9999 ; #集群的服务器列表,最终请求会被转发到这里
#server 10.10.10.11:8888 ;
#server 10.10.10.12:7777 ;
#server 10.10.10.13:6666;
}


#server虚拟主机设置,可以设置多个:基于IP的虚拟主机,基于域名的虚拟主机
server {
# 监听的端口
listen 1212;
# 主机名称
server_name 10.10.10.09;

charset utf-8;

#access_log logs/host.access.log main;

location / {
proxy_pass http://myCluster; 
proxy_http_version 1.1;
proxy_set_header Host $host:$server_port;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";    
proxy_set_header Origin "";    
}

location /public/ {    
root D:\java\command;
autoindex on;
rewrite /public/(.*)$ /$1 break;
}

location ~ /command/.*\.(gif|jpg|jpeg|png|bmp|js|css)$ {

expires 24h; #客户端缓存上述静态数据
root D:/java/nginx/static/; #文件路径
access_log D:/java/nginx/logs/access.log;
proxy_store on; 
proxy_store_access user:rw group:rw all:rw; 
proxy_temp_path D:/java/nginx/static/;#文件路径
proxy_redirect off;

#autoindex on;
proxy_set_header Host $host:$server_port; #填写你的ip
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

# 设置客户端能够上传的文件大小,注意要与应用程序中的文件大小限制兼容。
client_max_body_size 10m; 
client_body_buffer_size 1280k; 
proxy_connect_timeout 900; 
proxy_send_timeout 900; 
proxy_read_timeout 900; 
proxy_buffer_size 400k; 
proxy_buffers 40 320k; 
proxy_busy_buffers_size 640k; 
proxy_temp_file_write_size 640k;
if ( !-e $request_filename) 
{ 
proxy_pass http://myCluster; 
} 
}
# 用于设置如果出现指定的HTTP错误状态码,则返回指定的url页面
#error_page 404 /404.html;
#error_page 500 502 503 504 /50x.html;

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}

# pass the PHP scripts to FastCGI server listening on 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;
# include fastcgi_params;
#}

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}


# 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;
# }
#}

}
原文地址:https://www.cnblogs.com/renshengruxi/p/11090766.html