博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx模块--with-http_realip_module
阅读量:6613 次
发布时间:2019-06-24

本文共 1408 字,大约阅读时间需要 4 分钟。

分享下 nginx模块--with-http_realip_module

nginx官网给出的模块解释都是英文

用翻译软件呢,总有误差

这边最近有用到这个模块

给大家分享下

这个模块主要功能就是 在nginx访问日志中去除代理IP,显示客户的真实IP

作用呢,一般就是统计客户地域
还有就是写个统计脚本看有没有流量***

首页说下正确用法,看了很多文章,说的其实不对

大家在编译nginx时,加上这个模块

然后nginx.conf中

在这里加上"$http_x_forwarded_for"' 段,获取真实IP用的

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

HTTP模块,重点哦

不要在server中用,要在HTTP区用
这样就是全局使用
1 省事
2 如果配了什么防盗链、附件禁止执行啊什么的,日志显示的会有出入

http {

set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
这样,看的明白吧,HTTP区
set行是 你认为是代理IP的IP段,可以写成0.0.0.0/0就是全不信的意思
real_ip_header X-Forwarded-For; 这个是X-Forwarded-For获取的真实IP
real_ip_recursive on; 开启认为set行的都是代理IP
然后 nginx -s reload 就可以了,无需重启

然后呢

大家可以写个定时任务bash脚本
给大家提供个命令

这个命令是看日志中前10访问量最大的IP

grep -v HEAD /opt/logs/access.log | awk '{print $1}' | sort | uniq -c | sort -n -k 1 -r | head -n 10
解释:grep -v HEAD 去除大量网站健康检测请求,不统计这些
awk '{print $1}' 提取第一列,也就是客户真实IP
后面那些都是排版的,随便看看吧
161 203.208.60.21
125 203.208.60.21
111 203.208.60.21
90 203.208.60.21
85 144.48.243.7
84 60.189.207.4
75 203.208.60.21
74 221.194.47.21
68 199.185.0.10
60 202.168.163.14
效果就是这样,前面是次数,后面是真实IP

这个是看所有的状态码,很方便,看看网站有没有报错啊什么的

grep -v HEAD /opt/logs/access.log | awk '{print $9}'| sort | uniq -c | sort -rn
第9列是状态码,就是200 404 302 什么的
2638 200
691 404
1 403
1 304

转载于:https://blog.51cto.com/kevinzhang91/2054363

你可能感兴趣的文章
jquery中data函数的用法示例
查看>>
巧用strtotime函数计算日期
查看>>
JVM中java对象的生命周期
查看>>
mysql 查看连接数,状态
查看>>
JFinal集成YUI Compressor压缩合并JS和CSS
查看>>
docker快速搭建分布式爬虫pyspider
查看>>
raid0
查看>>
jsp中的Html转义
查看>>
windows下的Oracle卸载
查看>>
SQUID代理服务器小问题
查看>>
POJ1004·Financial Management
查看>>
Linux文件系统的创建、检测、修复、分区等工具的使用
查看>>
Centos6.5利用RubyGems的fpm制作zabbix_agent的rpm包,并使用ansible批量部署
查看>>
Play 源码分析心得
查看>>
sqlserver查看死锁的存储过程
查看>>
Mybatis 3 中文文档
查看>>
JVM层GC调优(上)
查看>>
在VirtualBox中的CentOS 6.3下安装VirtualBox增强包(GuestAd...
查看>>
Java开发中的23种设计模式详解(转)
查看>>
我的友情链接
查看>>