#user nobody;
#
#开启的worker数量,这里保存和cpu数量一致
worker_processes 6;
worker_cpu_affinity 000001 000010 000100 001000 010000 100000;
#制定error日志的格式为crit(error日志有六种格式:debug | info | notice | warn | error | crit;其中debug格式记录的错误信息最详细,crit记录的最少)
error_log /usr/local/nginx/logs/nginx_error.log crit;
#指定nginx启动时的pid文件的路径
pid /usr/local/nginx/logs/nginx.pid;
#指定nginx进程最多能够打开多少个文件描述符,通常与系统中的ulimit -n 的执行结果保持一致,ulimit -n执行的结果为系统一个进程最多能打开的文件数量
worker_rlimit_nofile 204800;
#事件区域配置
events {
#指定处理模型为epoll
use epoll;
#每个进程最多能处理的连接数
worker_connections 204800;
}
#http服务配置区域
http {
#指定文件扩展名和文件类型映射表
include mime.types;
#指定文件类型
default_type application/octet-stream;
#指定字符集
charset utf-8;
#服务器名字的hash表大小
server_names_hash_bucket_size 128;
#指定客户端请求头部的缓存大小
client_header_buffer_size 2k;
#指定客户端请求中较大的消息头的缓存数量和大小
large_client_header_buffers 4 4k;
#指定客户端请求的单个文件的最大字节数
client_max_body_size 8m;
#开启高效传输模式
sendfile on;
#防止网络阻塞
tcp_nopush on;
#客户端连接超时时间
keepalive_timeout 60;
#FastCGI相关参数是为了改善网站的性能,减少资源占用,提高访问速度
#配置fastcgi缓存路径个目录结构等级
fastcgi_cache_path /usr/local/nginx/fastcgi_cache levels=1:2
#关键字区域存储时间共和非活动连接删除时间
keys_zone=TEST:10m inactive=5m;
#连接到后端fastcgi的超时时间
fastcgi_connect_timeout 300;
#向FastCGI传送请求的超时时间
fastcgi_send_timeout 300;
#接收FastCGI应答的超时时间
fastcgi_read_timeout 300;
#指定读取FastCGI应答第一部分需要多大的缓冲区
fastcgi_buffer_size 4k;
#指定本地需要用多少和多大的缓冲区来缓冲FastCGI的应答请求
fastcgi_buffers 8 4k;
#通常为fastcgi_buffer_size大小的两倍
fastcgi_busy_buffers_size 8k;
#写入缓存文件时使用多大的数据块,大小同上
fastcgi_temp_file_write_size 8k;
#开启Fastcgi的缓存并且为其指定一个名称
fastcgi_cache TEST;
#指定不同的状态码,其缓存的时间
fastcgi_cache_valid 200 302 1h;
#URL经过被访问多少次将被缓存
fastcgi_cache_valid 301 1d;
fastcgi_cache_valid any 1m;
fastcgi_cache_min_uses 1;
#指定什么情况下不进行缓存
fastcgi_cache_use_stale error timeout invalid_header http_500;
#指定缓存文件最大数量,经过多长时间文件没有被请求后则删除缓存
open_file_cache max=204800 inactive=20s;
#指令中的inactive参数时间内文件的最少使用次数,如果超过这个数字,文件更改信息一直是在缓存中打开的;
open_file_cache_min_uses 1;
#指定多长时间检查一次缓存的有效信息,检查该缓存的源文件是否发生变化修改等
open_file_cache_valid 30s;
# nagle算法,有需要发送的就立即发送,连接转换为长连接时使用;
tcp_nodelay on;
#开启gzip压缩
gzip on;
#指定最小压缩文件的大小
gzip_min_length 1k;
#指定压缩缓冲区的个数和格式
gzip_buffers 4 16k;
#指定压缩版本
gzip_http_version 1.0;
#指定压缩等级,1-9级,9的压缩级别最高
gzip_comp_level 2;
#指定压缩文件类型
gzip_types text/plain application/x-javascript text/css application/xml;
#前端缓存服务器缓存经过压缩的页面
gzip_vary on;
#配置日志格式,日志格式为access
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
server {
listen 80;
server_name www.linuxfan.cn;
location / {
root /usr/local/nginx/html/;
proxy_pass http://*.*.*.*:8080;#开启nginx代理到指定地址
index index.html index.html;
}
#nginx状态页面
location /status {
stub_status on;
access_log off;
}
location ~ .*.(gif|jgp|jpeg|png|bmp|swf|js|css)$ {
expires 30d; #指定以上格式的文件将进行缓存
}
access_log /usr/local/nginx/access.log access;
}
}