Nginx
从程序猿到程序员
努力吧骚年
展开
-
Nginx学习笔记——Helloword
简述Nginx是一个开源且高性能、可靠的HTTP中间件、代理服务。优势(1)IO多路复用epoll(2)轻量级(3)CPU亲和(affinity)(4)sendfile环境部署(1)系统为CentOS 7.2 双核 1G内存(2)关闭iptables和selinuxiptables -Liptables -Fiptables -t nat -Liptables -t na...原创 2018-10-04 14:56:36 · 441 阅读 · 0 评论 -
Nginx学习笔记——相同server_name优先级、location优先级、try_files、alias
相同server_name多个虚拟主机优先级访问比如如下配置:server { listen 80; server_name testserver1 127.0.0.1; location { ... }}server { listen 80; server_name testserver2 127.0.0.1; location { ... }}比如配置了不...原创 2018-11-23 14:33:57 · 4505 阅读 · 0 评论 -
Nginx学习笔记——性能优化
文件句柄文件句柄Linux、Unix一切皆文件,文件句柄就是一个索引。设置方式系统全局修改(默认1024)、用户局部性修改、进程局部性修改全局/用户修改vim /etc/security/limits.conf加入如下内容:root soft nofile 65535root hard nofile 65535* soft nofile 25535* hard no...原创 2018-11-24 16:30:24 · 264 阅读 · 0 评论 -
Nginx学习笔记——geoip模块(地域信息)
概述基于IP地址匹配MaxMind GeoIP二进制文件,读取IP所在地域信息。安装模块yum install nginx-module-geoip使用场景(1)区别国内外作HTTP的访问规则(国内访问国内服务器,国外访问国外服务器)(2)区别国内城市地域作HTTP访问规则(可作就近访问规则)测试(1)首先需要在/etc/nginx/nginx.conf中加载GeoIp模块loa...原创 2018-10-31 14:47:50 · 1541 阅读 · 0 评论 -
Nginx学习笔记——Secure_link模块
作用(1)指定并允许检查请求的链接的真实性以及保护资源免遭未经授权的访问(2)限制链接生效周期配置语法Syntax:secure_link expression;Default:默认无Context:http,server,locationSyntax:secure_link_md5 expression;Default:默认无Context:http,server,locat...原创 2018-10-31 11:09:04 · 4662 阅读 · 0 评论 -
Nginx学习笔记——场景实践之《负载均衡》
负载均衡GSLB全局负载均衡。如:张三访问某应用,先请求了边缘调度节点,边缘调度节点由中心调度节点调控,然后再去请求应用服务。SLB调度节点和服务节点通常在一个逻辑地域。四层负载均衡和七层负载均衡四层负载均衡传输层控制,对客户端的请求,进行TCP/IP协议的包转发,性能快。七层负载均衡可以处理应用层,如改写HTTP的头信息、重定向等。Nginx就是一个典型的七层负载均衡...原创 2018-10-10 17:57:19 · 734 阅读 · 0 评论 -
Nginx学习笔记——场景实践之《代理服务》
代理服务Nginx可以做【HTTP、HTTPS】、【ICMP、POP、IMAP】邮件、【RTMP】流媒体的代理。正向代理比如:公司内只有一台电脑可以连入公网,所有的计算机一个代理,通过这台计算机(代理)都可以连入公网。反向代理比如:一个客户端请求一个网站,往往请求的是代理,通过代理给你分配一个服务器,让你访问。正反向的区别正向代理代理的对象是客户端。反向代理代理的对象是服务端。...原创 2018-10-08 21:27:45 · 221 阅读 · 0 评论 -
Nginx学习笔记——rewrite规则
Nginx的rewrite规则实现url重写以及重定向。场景URL访问挑战,支持开发设计页面跳转、兼容性支持、展示效果等SEO优化维护后台维护、流量转发等安全,使用rewrite可以实现伪静态语法配置Syntax:rewrite regex replacement [flag];Default:默认无Context:server,location,if如:rewri...原创 2018-10-13 17:17:11 · 250 阅读 · 0 评论 -
Nginx学习笔记——场景实践之《动静分离》
动静分离通过中间件将动态请求和静态请求分离。优势分离资源,减少不必要的请求消耗,减少请求延时。请求流程图场景以Tomcat为例,Tomcat处理jsp动态请求,而Nginx直接处理静态资源。场景演示Nginx与Tomcat配合,演示动静分离的场景,以Nginx为中间件,动态请求访问Tomcat,静态资源直接从中间件返回给客户端进行显示。(1)首先在Tomcat/webapps...原创 2018-10-13 14:07:37 · 268 阅读 · 0 评论 -
Nginx学习笔记——场景实践之《缓存服务》
缓存类型使用缓存,就是为了减少后端的压力。(1)服务端缓存:Memcached、Redis等。(2)代理缓存:Nginx、代理、中间件上的缓存。(3)客户端缓存:浏览器上面的。代理缓存proxy_cache配置语法先定义缓存路径:syntax:proxy_cache_path path [levels=levels][use_temp_path=on|off] keys_zon...原创 2018-10-12 16:40:38 · 291 阅读 · 0 评论 -
Nginx学习笔记——场景实践之《静态资源web服务》
前备知识适用场景静态资源非服务器动态运行生成的文件类型种类浏览器端渲染HTML、CSS、JS图片JPEG、GIF、PNG视频FLV、MPEG文件TXT等任意下载文件CDN内容分发网络,草图如下:功能1:静态资源的访问语法配置Linux下零拷贝技术:Syntax:sendfile on | off;Default:sendf...原创 2018-10-05 17:29:49 · 275 阅读 · 0 评论 -
Nginx学习笔记——访问控制
访问控制(1)基于IP的访问控制:http_access_module(2)基于用户的信任登录:http_auth_basic_modulehttp_access_module配置语法Syntax:allow address | CIDR | unix: | all;default:默认无Context:http,server,location,limit_exceptSyntax...原创 2018-10-05 11:00:50 · 694 阅读 · 0 评论 -
Nginx学习笔记——请求限制
请求限制(1)连接频率限制:limit_conn_module(2)请求频率限制:limit_req_module配置语法连接限制配置语法Syntax:limit_conn_zone key zone=name:size;Default:默认无Context:httpname:空间名字,size:空间大小并发数量Syntax:limit_conn zone number;De...原创 2018-10-04 17:35:10 · 263 阅读 · 0 评论 -
Nginx学习笔记——模块(官方模块)
模块分为官方模块、第三方模块。sub_status_module用于监控Nginx客户端连接的信息。配置语法Syntax:stub_statusDefault:默认无Context:server,location配置在/etc/nginx/conf.d/default.conf中增加如下配置: location /mystatus { stub_statu...原创 2018-10-04 16:19:23 · 202 阅读 · 0 评论 -
Nginx学习笔记——日志(log_format)
日志配置在/etc/nginx/nginx.conf中有log_format的配置。 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' ...原创 2018-10-04 15:12:40 · 8683 阅读 · 0 评论 -
Nginx学习笔记——压力测试
ab接口压力测试安装yum install httpd-tools使用ab -n 2000 -c 2 http://127.0.0.1/-n 总的请求数-c 并发数-k 是否开始长连接测试动静分离的性能将静态资源放在Nginx中,使用ab工具进行压测-n 2000 -c 20,request per second为8K级别。将静态资源放在Tomcat中,使用ab工具进行压测-...原创 2018-11-23 15:45:27 · 697 阅读 · 0 评论