当前位置: 首页 > java >正文

Nginx---总结

Nginx优化

全局块配置

user 配置用户一般系统用户

worker_processes 开启工作进程数量一般cpu核心数设置auto

worker_cpu_affinity 配置cpu亲和性一般auto

pid nginx的进程号文件路径

work_rlimit_nofiles 配置最大文件打开数

events块配置

use 配置使用算法一般epoll

worker_connections 配置单个worker进程可以同时处理的request请求

http配置

log_format 定义日志格式

sendfile 静态资源处理有效

tcp_nopush 配置静态资源sendfile同时使用

tcp_nodeny nginx动态服务可以打开

keepalive_timeout 连接超时时间可以适当降低提前断开连接回收网络资源

gzip on 文件进行压缩可以使用gzip_company_level配置压缩等级

server配置

error_log path level 定义错误日志格式错误等级

access_log path logformat 定义访问日志格式

location配置

location 匹配顺序

精确匹配 开头匹配 正则匹配 正则匹配区分大小写 不匹配正则区分大小写 不匹配正则不区分大小写 通配符

nginx功能

反向代理

使用模块proxy

配置位置 location

配置命令

example

请求代理京东页面

proxy_pass http://www.jd.com

负载均衡

配置上游服务器

使用模块upstream

配置位置 httpserver级别

使用配置命令 upstream

example

代理192.168.211.20:80192.168.211.23:80

upstream web {

server 192.168.211.20:80;

server 192.168.211.23:80;

}

配置反向代理

proxy_pass http://web;

防盗链

使用模块referer

使用命令 valid_referers none blocked `白名单,可以是域名,也可以是网段`;

必须在日志格式中使用变量$http_referer

example 限制只有网段192.168.211.120/24网段可以使用本机图片资源

location ~ .*\.{png|gif|jpg}$ {

root /use/share/nginx;

valid_referers none blocked 192.168.211.120/24;

if ($invaild_referer) {

return 403;

}

}

地址重写

使用模块rewrite模块

使用位置 serverlocation

使用命令 rewrite if return set rewrite_log

可以使用rewrite_log配置地址重写日志

访问ip跳转到京东界面

location / {

if ($host ~ ^www) {

rewrite .* http://jd.com ;

}

}

访问脚本文件请求返回403

location ~ \.(sh)$ {

default_type application/html;

return 403 "此文件禁止访问";

}

流量限制

使用模块limit_req模块进行

使用命令limit_req_zone $binary_remote_addr定义加密规则 zone=name(区域名字):10M rate=10r/s(设置速率)

使用limit_req进行流量限制

example

limit_req zone=name

使用geomap设置黑名单白名单进行流量限制

geo $limit {

defautl 1;

192.168.211.25/24 0;

}

map $limit $limit_key {

1 "";

0 $binary_remote_addr;

}

用户信任登录

使用模块auth_basic

使用命令 auth_basic auth_basic_user_file

使用命令htpasswd进行用户密码加密

nginx性能监控

使用模块stub_status

作用监控nginx当前访问数处理拒绝访问

相关配置 stub_status

配置位置 location

日志

相关模块 log模块

相关配置 httpserverlocation

相关命令: access_log error_log log_format

定义访问日志路径已经格式

定义错误日志路径以及等级

https使用

使用模块SSL

使用位置 location

作用 配置更安全HTTPS协议进行传输

HTTPSHTTP安全的原因:

http明文传输容易被监听篡改冒充

https加密传输可以使用加密算法进行加密防止信息被监听,然后使用AC证书进行用户身份认证防止他人冒充,最后还可以使用哈希算法进行信息校验防止信息被篡改

SSL相关协议

SSL握手协议负责进行连接,涉及证书认证数据加解密

SSL记录协议负责进行数据传输

http://www.xdnf.cn/news/1885.html

相关文章:

  • 服务网格助力云原生后端系统升级:原理、实践与案例剖析
  • 第25周:DenseNet+SE-Net实战
  • 跟我学C++中级篇——处理对象的复制
  • Java实现加密(七)国密SM2算法的签名和验签(附商用密码检测相关国家标准/国密标准下载)
  • 深度解析 Java 排序中的 Null 值处理:Comparator.nullsLast 与 Comparator.nullsFirst 最佳实践
  • 酷狗音乐安卓版K歌功能与音效优化体验测评
  • 整合 CountVectorizer 和 TfidfVectorizer 绘制词云图
  • easyExcel导入导出convert
  • 算法训练营 Day1
  • 课程9. 机器翻译,Seq2Seq与Attention
  • BS客户端的单点登录
  • 贪心算法~~
  • 2022李宏毅老师机器学习课程笔记
  • 2025年第一季度159个CVE漏洞遭利用 28.3%在披露24小时内被攻击
  • day01_编程语言介绍丶Java语言概述丶开发环境搭建丶常用DOS命令
  • 数字人民币杠杆破局预付乱象 XBIT智能合约筑牢资金安全防线
  • IT人力外包定义-优势-服务流程介绍
  • 第1讲|R语言绘图体系总览(Base、ggplot2、ComplexHeatmap等)
  • 从零开始学Python游戏编程40-碰撞处理2
  • ElementUi的tabs样式太难修改,自定义tabs标签页
  • 26考研 | 王道 | 数据结构笔记博客总结
  • Java并发编程面试题:并发工具类(10题)
  • WebUI可视化:第6章:项目实战:智能问答系统开发
  • 区间和数量统计 之 前缀和+哈希表
  • Qt基础009(HTTP编程和QJSON)
  • Jsp技术入门指南【十】IDEA 开发环境下实现 MySQL 数据在 JSP 页面的可视化展示,实现前后端交互
  • AD盖白油(一面是板颜色,一面是白色丝印)
  • 数据库-子查询、关联查询 和 TCL 语言
  • 【HTTP/3:互联网通信的量子飞跃】
  • AI 编程工具:Augment Code