Nginx 笔记与总结(4)配置 server 访问日志
打开 nginx.conf:
[root@localhost ~]# cd /usr/local/nginx/conf
[root@localhost conf]# vim nginx.conf
在默认的 server 段中包含以下内容:
#access_log logs/access.log main;
表示该 server 的访问日志文件是 logs/access.log
Nginx 允许针对不同的 server 做不同的 log
main 表示日志使用的格式是 'main' 格式,还可以自定义其他格式。
在 http 端中,有如下内容:
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
该内容表示 main 类型的日志记录的 remote_addr ... http_x_forward_for 等选项。
打开 logs/access.log 文件进行观察:

$remote_addr:远程 ip 地址,这里是 192.168.254.1
$remote_user[$time_local]:远程用户[访问的时间],访问的时候 http 的头信息未必带了 remote_user,所以这里显示 -
$request:请求类型,这里几个都是 GET 请求,使用的是 HTTP/1.1 协议
$status:请求状态,这里看到了 200 和 304
$body_bytes_sent:响应返回了多少字节
$http_referer:用户来自(上一个浏览地址)
$http_user_agent:用户代理(浏览器信息或者蜘蛛信息,查看 http://www.baidu.com/robots.txt)
$http_x_forward_for:在经过代理时,代理把本来的 IP 加在此头信息中,传输原始的 IP
服务器会选择以 $remote_addr 还是 $http_x_forwad_for 来判断用户的 ip
配置访问日志:
【例】
配置 dee.com 的访问日志
[root@localhost conf]# vim nginx.conf
① 把 log_format main 前面的 # 去掉:

② 添加 access_log

保存退出。
平滑重启 Nginx。
进入 logs 目录:

此时 dee.com.access.log 大小是 0
访问 dee.com,查看 dee.com.access.log:

宿主机的 ip 是 192.168.254.1:

如果发现网站访问量急剧增加,首先检查该日志文件,判断是蜘蛛爬行造成的还是来自对手的攻击,从而选择是封对方 ip 还是暂停敏感页面。
Nginx 笔记与总结(4)配置 server 访问日志的更多相关文章
- Nginx 笔记与总结(5)访问日志管理:计划任务 + 日志切割
要在第二天的凌晨把前一天的访问日志切割备份,并以时间作为文件名,例如:access.20150728.log,这就需要在 Linux 中格式化时间,例如: [root@localhost ~]# da ...
- Centos下Nginx配置WEB访问日志并结合shell脚本定时切割
在一个成熟的WEB系统里,没有日志管理是不可以的,有了日志,可以帮助你得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某个服务或server的性能瓶颈等. ...
- Spring Boot 2 配置服务器访问日志
Tomcat控制台中看到的日志是服务器的日志,而服务器访问日志则是记录服务处理的请求信息. 开发环境:IntelliJ IDEA 2019.2.2Spring Boot版本:2.1.8 1.新建一个名 ...
- Apache配置 5.访问日志不记录静态文件
介绍:项目中的CSS.图片.js都是静态文件.一般会将静态文件放到一个单独的目录中,以方便管理. 1. 配置 # vim /usr/local/apache2.4/conf/extra/httpd-v ...
- Apache配置 4.访问日志
(1)介绍 访问日志作用很大,不仅可以记录网站的访问情况,还可以在网站有异常发生时帮助我们定位问题. (2)配置 # vi /usr/local/apache2.4/conf/extra/httpd- ...
- Nginx图片及样式文件不记录访问日志
1.Nginx作为web服务器是可直接在server配置文件中做如下配置: server { listen ; server_name www.fansik.com; access_log /data ...
- Global配置接口访问日志以及测试日志记录
在客户端请求接口时,经常会出现接口相应慢,接口等待超时,接口错误,为了这事相信不少后台开发者为此背锅,记下请求日志,拿出有力证据这才是关键. 1.接口请求错误记录 很多时候接口请求出现的500,404 ...
- Tomcat配置自定义访问日志 --- 获取请求头部信息
使用tomcat,搭建完个人网站后,默认记录来访游客的信息是十分有限的,主要有ip和路径以及方法等. 有时候为了获取更多来访信息,比如请求的头部信息,这个时候就需要我们手动配置log了. 开始 进入T ...
- Linux 下 Nginx 反向代理 负载均衡配置
转载请注明出处:http://blog.csdn.net/smartbetter/article/details/52036350 上一篇分享了 Nginx + JDK + Tomcat + MySQ ...
随机推荐
- Tickeys -- 找对打字的感觉 (机械键盘音效软件)
最近发现公司里面越来越多人开始用机械键盘了,问了很多人为什么用机械键盘,主要有两种,一种是真的情怀,他们怀念十年前那种台式机硬邦邦的键盘,另外一种是因为喜欢机械键盘的声音,打字很爽.前者那真是没救了, ...
- linux常见问题集锦
本文转自 http://bbs.chinaunix.net/thread-3668921-1-1.html,在此感谢作者分享 一.填空题: 1. 在Linux系统中,以 文件 方式访问设备 . 2. ...
- Android实现高仿QQ附近的人搜索展示
本文主要实现了高仿QQ附近的人搜索展示,用到了自定义控件的方法 最终效果如下 1.下面展示列表我们可以使用ViewPager来实现(当然如果你不觉得麻烦,你也可以用HorizontalScrollVi ...
- OneApm
cloudinsight-java-sdk https://github.com/cloudinsight
- Visual Studio 2012 使用免费的Team Foundation Service(转载)
转载地址:http://www.cnblogs.com/chsword/archive/2012/12/14/visualstudio2012_tfs.html VS2012提供了在线的TFS服务,免 ...
- tnsnames.ora存放路径
tnsnames.ora存放路径: D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN
- Effective C++笔记:设计与声明
条款18:让接口容易被正确使用,不易被误用 1,好的接口很容易被正确使用,不容易被误用.你应该在你的所有接口中努力达成这些性质. 2,“促进正使用”的办法包括接口的一致性,以及与内置类型的行为兼容. ...
- mysql如何修改表类型(表引擎)
参考阅读:http://www.manongjc.com/article/1205.html 最近遇到一个修改 MySQL 表类型的问题,以前在 phpmyadmin 管理 mysql 数据库时,建立 ...
- diff和common
diff 命令 diff命令:找出两个文件的不同点,用于比较文件的差异 linux上非常重要的工具,一般用于制作补丁文件,特别是比较两个版本不同的文件以找到改动的地方. diff在命令行中打印每一个行 ...
- 解决Windows 10下Wireshark运行问题
解决Windows 10下Wireshark运行问题在Windows 10下,安装Wireshark时候,提示WinPcap不被系统系统支持.这是由于最新版的WinPcap 4.1.3只支持到Wind ...