- 隐藏版本号:在http大模块中修改 不在server中 也不是location
第二种:改源码包
文件在这:
- nginx日志分割:nginx没有自带日志分割功能 通过脚本实现日志分割
按照时间分割 每天生成一个新的日志 新建一个nginxlog.sh
Kill 没有e
- 网页压缩:http-gzip 可以对文件内容和文件进行压缩的功能 节约宽带 提升用户访问速度
开启压缩功能
- 设置nginx的图片缓存时间 可以在日后访问时不需要经常向后台请求数据 加快访问速度 一般针对静态页面 动态页面一般不设置缓存时间
- 连接超时 vim /nginx.conf
- nginx并发设置 在高并发场景 需要nginx启动更多进程来保证快速响应 根据cpu的核心数可以调整nginx的工作进程
查看cpu
一般设置cpu的一半
修改Limits.conf
绑定cpu:
大量出现timewait如何解决 是tcp连接状态中的一种 不是报错出现在四次挥手之后 在timewait状态下 tcp处于连接等待状态 等待有一个持续时间 http1.1的会话保持
Vim /etc/sysctl.conf
Sysctl -p 生效
- 确保可靠的关闭连接
- 避免连接复用
- 在连接正常关闭之后 一段时间后会自动消失 占用的资源很小 对服务器性能的影响有限
- 快速关闭timewait
- 表示开SYN cookies 当出现syn等待队列溢出时 启用cookies处理syn队列 默认是0 1表示开启
- Timewait状态可以重用 一个连接要占用一个端口如果timewait太多把端口占满了 新的连接请求也不会被拒绝 也不会处理
- 让timewait尽快被系统回收
- 所有timewait最大的生命周期60秒
Nginx的内置变量 :打印结果
$remote_addr:显示客户端的IP地址
$remote_port:显示客户端的端口
$uri:显示请求的uri
$host:显示请求的主机名
$request_method:显示请求的方法
重要!!:
Proxy_set_header X-Forwarded-for $remote_addr
代理服务器设置这个变量 客户端的真实IP要发送给后端 否则代理服务器地址会被拉入黑名单
Proxy_set_header X-Real-IP $remote_addr
客户端的真实IP发送给后端 现在所有的网站都会要求客户端请求时加上真实IP
Nginx设置防盗链
防止其他网站盗用本站的图片
进入nginx的配置文件