【Nginx概述】
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-Like协议下发行。其特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好。
【负载均衡策略】
1. 使用硬件复杂均衡策略实现,如使用F5、Array等负载均衡器
2. 使用软件进行负载均衡
2.1 使用阿里云服务器的负载均衡SLB
2.2 使用Nginx + Keepalived
2.3 使用其它负载均衡,如LVS(Linux Virtual Server)、haproxy等技术
【nginx日志管理】
nginx访问日志放在 logs/host.access.log下,并且使用main格式(可以自定义格式)。
对于main格式如下定义:
日志文件输出格式 这个位置相当于全局设置
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_refer" '
# ""$http_user_agent" "$http_x_forwarded_for"";
查看日志的命令 :tail -n 100 -f nginx/logs/access.log
【日志切割】
对nginx日志的分析非常重要,通常需要运维去对nginx的日志进行其切割和分析处理。比如实现一个定时任务,去处理nginx日志。
1.分析如何去实现日志切分,编写shell脚本
2.定时任务对脚本进行调度: crontab -e
*/1 * * * * sh /usr/local/nginx/sbin/log.sh
【location语法】
location语法:表示URI 定位方式。
基础语法有三种:
location = pattern {} 精准匹配
location pattern {} 一般匹配
location ~ pattern {} 正则匹配
【Nginx反向代理proxy 与 负载均衡upstream】
配置反向代理proxy:proxy_pass url地址
配置负载均衡upstream:upstream
注意:反向代理之后获得客户端IP地址为nginx服务器地址,这里需要nginx进行forward,设置真实的ip地址:
设置客户端真实ip地址
proxy_set_header X-real-ip $remote_addr