nginx 优化

隐藏nginx版本号:在http标签内写server_tokens off;

隐藏apache版本号:ServerTokens Prod

ServerSignature Off

更改nginx默认的用户及用户组 由nobody改为nginx

配置nginx work worker进程个数:worker_processes 8;#为cpu个数或核数 worker_connections: 20480 #每个进程的最大并发连接数 受ulimit -n限制若有四个work_processes进程数则相当于每秒有8万的并发了4*20480

让不同进程运行在不同cpu上:若worker_processes为4 worker_cpu_affinity 0001 0010  0100 1000;

若worker_processes为8 worker_cpu_affinity 0001 0010  0100 1000 0001 0010  0100 1000;

添加事件模型:在events标签内添加:epool;默认就是epool

优化服务器名字(域名)的hash表大小在http标签中设置 server_names_hash_max_size   512;server_names_hash_buchet_size  512; 默认为512Kb

设置keepalive_timeout 50;

上传文件大小限制:在http server location标签内设置 client_max_body_size 1m;若客户端请求超出这个限制会报413 error

nginx gzip 压缩模块 对js css html等要压缩 对图片  视频 flash不要压缩

在http标签中:gzip on; gzip_min_length 1k; #大于1k才压缩  gzip_buffers 4 16k; gzip _comp_level 2;gzip_types application/javascript text/css application/xml;gzip_vary on;

设置expires

expires 优点:可以降低网站的带宽 节约成本 提升用户体验 减轻服务器压力 缺点:被缓存的页面数据更新了 用户可能看到的还是旧的内容

解决缺点方法:1、缩短缓存时间 2、更改缓存对象名 在locations标签内设置

location ~.*\.(gif|jpg|jpeg|png|bmp|swf)${

expires 30d;

}

location ~.*\.(js|csss)${

expires 30d;

}

上一篇:[operator]jenkins+gitlab/Webhook自动构建发布


下一篇:xml特殊字符处理 如&