文章分类 -  Nginx

摘要:1. nginx_lua原理 ngx_lua将lua集成进Nginx Lua内建协程,协程调用异步API,然后协程挂起,在异步回调事件到来时,再将协程唤醒,继续执行。 这样既可以实现全异步的Nginx机制,不会影响nginx的高并发处理性能,又使开发者以同步的方式编写异步程序,使代码复杂性大为降低。 阅读全文
posted @ 2025-10-09 17:43 奋斗史 阅读(8) 评论(0) 推荐(0)
摘要:1. Nginx的HTTP请求共有11个阶段 阶段 1: POST_READ 时机:读取完请求头部之后 用途:在请求处理的早期进行一些操作 典型模块:realip 模块在此阶段根据 X-Forwarded-For 等头部确定客户端的真实 IP 阶段 2: SERVER_REWRITE 时机:在 se 阅读全文
posted @ 2025-09-26 15:04 奋斗史 阅读(7) 评论(0) 推荐(0)
摘要:1. Nginx的启动流程 阶段一:启动准备(在 Master 进程创建之前) 这个阶段是在执行 nginx 命令后,第一个 Master 进程被创建之前发生的。 1. 解析命令行参数 当你执行 nginx -s stop、nginx -t 或 nginx -c /path/to/nginx.con 阅读全文
posted @ 2025-09-26 10:59 奋斗史 阅读(5) 评论(0) 推荐(0)
摘要:1. 什么是事件驱动模型? 1. 事件驱动模型的核心思想 程序的执行流程不是预先确定的,而是由外部或内部发生的事件来决定的。 2. 举例 传统同步模型(如多线程): 就像一家餐厅为每一桌客人都分配一个专属服务员。服务员从点餐、上菜到结账,全程只服务这一桌。如果客人还没想好吃什么,服务员就只能等待(阻 阅读全文
posted @ 2025-09-25 13:17 奋斗史 阅读(24) 评论(0) 推荐(0)
摘要:1. 根据user_agent if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetche 阅读全文
posted @ 2024-06-04 15:18 奋斗史 阅读(24) 评论(0) 推荐(0)
摘要:location ~ .*\.(html|css|jpg|gif|js|png|htm)?$ { access_by_lua_block { -- 获取请求的文件名称 local filename = ngx.var.request_filename -- 定义白名单 local white_fil 阅读全文
posted @ 2024-05-15 17:51 奋斗史 阅读(11) 评论(0) 推荐(0)
摘要:location ~ .*\.(html|css|jpg|gif|js|png|htm)?$ { access_by_lua_block { -- 获取请求的文件名称 local filename = ngx.var.request_filename -- 获取该文件的修改时间 local comm 阅读全文
posted @ 2024-04-26 11:06 奋斗史 阅读(10) 评论(0) 推荐(0)
摘要:map $request_filename $file_mtime { default 0; "~(?<file_year>\d{4})" $file_year; } location ~ .*\.(html|css|jpg|gif|js|png|htm)?$ { if ($file_mtime < 阅读全文
posted @ 2024-04-24 15:22 奋斗史 阅读(7) 评论(0) 推荐(0)
摘要:1. web应用防护系统 常见的攻击 1. SQL注入 2. XSS跨站脚本攻击 3. 不安全下载 4. 隐私文件访问 .svn .git 5. 弱口令 6. 非授权访问 redis 7. CC攻击 性能CC攻击 8. DDOS攻击 CDN 2. nginx 可以实现的功能 1. CC攻击:频率限制 阅读全文
posted @ 2022-12-02 14:41 奋斗史 阅读(1423) 评论(0) 推荐(0)
摘要:1. expires的作用 1)expires起到控制页面缓存的作用,合理的配置expires可以减少很多服务器的请求; 2)对于站点中不经常修改的静态内容(如图片,JS,CSS),可以在服务器中设置expires过期时间,控制浏览器缓存,达到有效减小带宽流量,降低服务器压力的目的。 3)Expir 阅读全文
posted @ 2022-12-01 15:10 奋斗史 阅读(828) 评论(0) 推荐(0)
摘要:1. 利用iptables限制nginx端口访问 [root@china ~]# vim /etc/sysconfig/iptables ...... -A INPUT -s 100.110.15.16 -p tcp -m state --state NEW -m tcp --dport 80 -j 阅读全文
posted @ 2022-11-21 15:15 奋斗史 阅读(519) 评论(0) 推荐(0)
摘要:1. 流量控制 1. 模块: ngx_http_core_module limit_rate 限制单个连接的下载速度,如果是两个连接,下载速度*2 上下文: http server location location中的if字段 用法: limit_rate rate rate单位字节/秒,0为关闭 阅读全文
posted @ 2022-11-18 09:43 奋斗史 阅读(931) 评论(0) 推荐(0)
摘要:1. 盗链的实现原理 客户端向服务器请求资源,服务器只包含网页的文本内容,客户端浏览器在解析文本的过程中发现有图片存在,但是图片的链接指向的是其他服务器,这样形成了盗链行为。 2. 防盗链的原理 通过了解HTTP协议中的请求头部的Referer头域中的值是不是自己站点内的URL,就可以实现防盗链。 阅读全文
posted @ 2022-11-17 10:49 奋斗史 阅读(453) 评论(0) 推荐(0)
摘要:1. stream模块介绍 nginx从1.9.0版本开始,新增加了一个stream模块,用来实现四层协议的转发,代理或者负载均衡。 2. stream模块安装 默认nginx不会安装stream模块,需要编译安装的时候,手工添加上这个模块,--with-stream. 第一安装,执行make,ma 阅读全文
posted @ 2022-11-04 16:22 奋斗史 阅读(8839) 评论(0) 推荐(0)
摘要:1. 虚拟主机概念和类型介绍 1. 概念 1. 一个server标签就是一个虚拟主机,可以有多个server标签,也就是多个虚拟主机。 2. 一个虚拟主机拥有独立的资源和程序,可以独立地对外提供服务供用户访问。 2. 类型 1. 基于域名的虚拟主机 根据域名来区别不同的虚拟主机,常用于对外提供服务的 阅读全文
posted @ 2022-10-26 14:29 奋斗史 阅读(65) 评论(0) 推荐(0)
摘要:1. 问题现象 结构:nginx+tomcat(4台),nginx已安装主动监测模块upstream_check_module 问题:当一台tomcat已经down,但是另外4台应用不可用(即IP和端口都是可用的,但是业务是不可用的,因为代码出错),正常来说:反馈给客户端应该是404错误,但是反馈客 阅读全文
posted @ 2022-09-28 16:45 奋斗史 阅读(2306) 评论(0) 推荐(0)
摘要:1. 说明 我公司采用tengine+fastdfs的方式搭建的图片服务器,因为客户上传了一些webp格式的图片,访问该图片的时候返回415(Unsupported Media Type),经过查询nginx官网发现,nginx支持webp,但是要求nginx版本1.11.6以上。我公司的nginx 阅读全文
posted @ 2022-08-18 15:16 奋斗史 阅读(1236) 评论(0) 推荐(0)
摘要:1. nginx是什么? nginx是一个开源的,支持高性能高并发的www服务和代理服务软件。由一个俄罗斯人开发的。除了www服务和反向代理,还有负载均衡和缓存服务。 2. nginx应用环境 nginx可以运行在UNIX,Linux,BSD,Mac OS X,Solaris以及Microsoft 阅读全文
posted @ 2022-05-19 09:38 奋斗史 阅读(159) 评论(0) 推荐(0)
摘要:1. 从请求行中解析的变量 以访问http://localhost:80/nginx/varindex?a=1&b=2得到的结果GET /nginx/varindex?a=1&b=2 HTTP/1.1 为例(可以在access.log日志中看到访问结果) $arg_name 请求行中的参数,$arg 阅读全文
posted @ 2021-04-23 13:20 奋斗史 阅读(101) 评论(0) 推荐(0)
摘要:1. 系统层面 空的TCP允许回收利用:/proc/sys/net/ipv4/tcp_tw_reuse=1 加快TCP连接回收:/proc/sys/net/ipv4/tcp_tw_rescyle=1 不做洪水抵御:/proc/sys/net/ipv4/tcp_syncookies=0 设置打开的文件 阅读全文
posted @ 2018-11-17 23:26 奋斗史 阅读(343) 评论(0) 推荐(0)