定义了Nginx运行用户wwwwww的用户和用户组;nginx进程数,建议设置为等于CPU核心总数。worker_processes8;全局错误日志定义类型,[debug|资讯|公告|警告|错误|暴击]error_log/var/log/nginx/error.log信息;进程文件pid/var/run/nginx.pid;一个nginx进程最大打开文件描述符数,理论值应该是最大打开文件数(系统值ulimit-n)除以nginx进程数,但是nginx分配请求不统一,所以建议与ulimit-n的值一致。worker_rlimit_nofile65535;工作模式和连接事件上限{参考事件模型,使用[kqueue|rtsig|轮询|/开发/投票|选择|,如果在FreeBSD上运行,请使用kqueue模型。使用epoll;单个进程最大连接数(最大连接数=连接数*进程数)worker_connections65535;}sethttpserverhttp{includemime.types;#文件扩展名和文件类型映射表default_typeapplication/octet-stream;#默认文件类型字符集utf-8;#默认编码server_names_hash_bucket_size128;#服务器名哈希表大小client_header_buffer_size32k;#上传文件大小限制large_client_header_buffers464k;#设置请求缓冲区client_max_body_size8m;#设置请求缓冲区sendfileon;#启用高效文件传输模式。sendfile命令指定nginx是否调用sendfile函数输出文件。对于普通应用程序,将其设置为开。如果用于下载应用程序,如磁盘IO重负载应用程序,可以将其设置为off,以平衡磁盘和网络I/O处理速度,减轻系统负载。注意:如果画面显示不正常,将此项改为关闭。自动索引;#启用目录列表访问,适用于下载服务器,默认关闭。tcp_nopush上;#防止网络阻塞tcp_nodelayon;#防止网络阻塞keepalive_timeout120;#长连接超时时间,单位秒FastCGI相关参数是为了提高网站性能:减少资源占用,提高访问速度。下面的参数可以从字面上理解。fastcgi_connect_timeout300;fastcgi_send_timeout300;fastcgi_read_timeout300;fastcgi_buffer_size64k;fastcgi_buffers464k;fastcgi_busy_buffers_size128k;fastcgi_temp_file_write_size128k;gzip模块设置gzip;#启动gzip压缩输出gzip_min_length1k;#最小压缩文件大小gzip_buffers416k;#压缩压缩冲区gzip_http_version1.0;#压缩版本(默认1.1,如果前端是squid2.5,请使用1.0)gzip_comp_level2;#压缩级别gzip_typestext/plainapplication/x-javascripttext/cssapplication/xml;压缩类型,默认已经包含了text/html,下面就不用写了,往上写也没有问题,但是会有warn。gzip_varyon;limit_zone爬虫$binary_remote_addr10m;#Useupstreamblog.ha97.com{上游负载均衡,weight是权重,可以根据机器配置定义权重。weight参数表示权重值,权重值越高,被分配的概率越大。server192.168.80.121:80weight=3;server192.168.80.122:80weight=2;server192.168.80.123:80weight=3;}虚拟主机配置server{#监听端口listen80;#可以有多个域名,用空格分隔server_namewww.ha97.comha97.com;indexindex.htmlindex.htmindex.php;root/data/www/ha97;location~.*\.(php|php5)?${fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;includefastcgi.conf;}#图片缓存时间设置位置~.*\.(gif|jpg|jpeg|png|bmp|swf)${expires10d;}#JS和CSS缓存时间设置位置~.*\.(js|css)?${expires1h;}#日志格式设置log_formataccess'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''"$http_user_agent"$http_x_forwarded_for';#定义本虚拟主机的访问日志access_log/var/log/nginx/ha97access.logaccess;#为“/”开启反向代理定位/{proxy_passhttp://127.0.0.1:88;proxy_redirectoff;proxy_set_headerX-Real-IP$remote_addr;#后台web服务器可以通过X-获取用户真实IPForwarded-Forproxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;#下面是一些反向代理配置,可选。proxy_set_header主机$host;client_max_body_size10m;#客户端对单个文件的最大请求字节数client_body_buffer_size128k;#buffer代理缓冲客户端请求的最大字节数,proxy_connect_timeout90;#nginx与后端服务器连接超时时间(Proxyconnectiontimeout)proxy_send_timeout90;#后端服务器数据返回时间(代理发送超时)proxy_read_timeout90;#连接成功后,后端服务器响应时间(代理接收超时)proxy_buffer_size4k;#设置代理服务器(nginx)保存用户头信息的缓冲区大小proxy_buffers432k;#proxy_buffersbuffer,一般网页在32k以下,设置proxy_busy_buffers_size64k;#高负载下的缓冲区大小(proxy_buffers*2)proxy_temp_file_write_size64k;#设置缓存文件夹的大小,大于这个值,会从上游服务器传过来}#设置查看Nginx状态的地址location/NginxStatus{stub_statuson;access_logon;auth_basic"NginxStatus";auth_basic_user_fileconf/htpasswd;#htpasswd文件内容可以通过apache提供的htpasswd工具生成。}#本地动静分离反向代理配置#所有jsp页面由tomcat或resin定位处理~.(jsp|jspx|do)?${proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;proxy_passhttp://127.0.0.1:8080;}#所有静态文件都是nginx直接读取,不用tomcat或者reselocation~.*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)${过期15d;}location~.*.(js|css)?${过期1小时;}}}
