Nginx訪問日誌、Nginx日誌切割、靜態檔案不記錄日誌和過期時間
Nginx訪問日誌
log_format combined_realip `$remote_addr $http_x_forwarded_for [$time_local]`
` $host “$request_uri” $status`
` “$http_referer” “$http_user_agent”`;
combined_realip:日誌名稱
其餘為日誌內容
$remote_addr 客戶端IP(公網IP)
$http_x_forwarded_for 代理伺服器的IP
$time_local 伺服器本地時間
$host 訪問主機名(域名)
$request_uri 訪問的URL地址
$status 狀態碼
$http_referer referer
$http_user_agent user_agent
[root@centos7 ~]# vim /usr/local/nginx/conf/vhost/test.com.conf
server
{
listen 80;
server_name test.com test2.com test3.com;
index index.html index.htm index.php;
access_log /tmp/test.com.log combined_realip;
驗證:
[root@centos7 ~]# tail /tmp/test.com.log
127.0.0.1 – [10/Nov/2017:17:48:20 +0800] test.com “/” 401 “-” “curl/7.29.0”
127.0.0.1 – [10/Nov/2017:17:48:30 +0800] test.com “/index.php” 200 “-” “curl/7.29.0”
Nginx日誌切割
日誌切割指令碼
[root@centos7 shell]# vi nginx_log_rotate.sh
#! /bin/bash
d=`date -d “-1 day” +%Y%m%d`
#定義切割時間(切割一天前的日誌)
logdir=”/tmp/”
#此處指定要切割的日誌路徑(該路徑來自虛擬主機配置檔案)
nginx_pid=”/usr/local/nginx/logs/nginx.pid”
#呼叫pid的目的是執行命令:/bin/kill -HUP `cat $nginx_pid`
#該命令等價於命令:nginx -s reload(重新載入檔案)
cd $logdir
for log in `ls *.log`
do
mv $log $log-$d
done
/bin/kill -HUP `cat $nginx_pid`
#執行此命令進行過載生成新的日誌檔案,與kill -usr1 一樣
靜態檔案不記錄日誌和過期時間
驗證訪圖片的時候:
[root@centos7 test.com]# curl -x127.0.0.1:80 test.com/baidu.png -I
HTTP/1.1 200 OK
Server: nginx/1.12.1
Date: Fri, 10 Nov 2017 10:01:03 GMT
Content-Type: image/png
[root@centos7 test.com]# curl -x127.0.0.1:80 test.com/index.php
沒記錄日誌
[root@centos7 test.com]# tail /tmp/test.com.log
127.0.0.1 – [10/Nov/2017:17:48:20 +0800] test.com “/” 401 “-” “curl/7.29.0”
127.0.0.1 – [10/Nov/2017:17:48:30 +0800] test.com “/index.php” 200 “-” “curl/7.29.0”
127.0.0.1 – [10/Nov/2017:18:02:38 +0800] test.com “/index.php” 200 “-” “curl/7.29.0”
127.0.0.1 – [10/Nov/2017:18:02:38 +0800] test.com “/index.php” 200 “-” “curl/7.29.0”
問題:curl訪問時間不對,但是系統時間是對的?
[root@centos7 test.com]# curl -x127.0.0.1:80 test.com/baidu.png -I
HTTP/1.1 200 OK
Server: nginx/1.12.1
Date: Wed, 15 Nov 2017 02:58:15 GMT
Content-Type: image/png
[root@centos7 test.com]# date
Wed Nov 15 10:58:32 CST 2017
`
本文轉自方向對了,就不怕路遠了!51CTO部落格,原文連結:http://blog.51cto.com/jacksoner/1981934 ,如需轉載請自行聯絡原作者
相關文章
- 如何定時切割nginx日誌?Nginx
- nginx高階訪客日誌切割Nginx
- nginx1.24配置logrotate日誌切割Nginxlogrotate
- nginx中access日誌如何做到按時間完美切割Nginx
- nginx日誌檔案按天記錄定時清理迴圈記錄Nginx
- nginx日誌配置檔案說明Nginx
- Nginx日誌配置Nginx
- nginx 清空日誌Nginx
- python通過TimedRotatingFileHandler按時間切割日誌Python
- [技術分享]日誌切割(按天切割日誌)
- awk統計訪問nginx日誌次數Nginx
- Nginx日誌輪訓Nginx
- Laravel 指定日誌檔案記錄任意日誌Laravel
- 操作日誌記錄(包括輸出至自定義日誌檔案)
- Linux下使用GoAccess監控Nginx訪問日誌LinuxGoNginx
- linux中用shell指令碼對tomcat和nginx做日誌切割Linux指令碼TomcatNginx
- 日誌服務之使用Nginx模式採集日誌Nginx模式
- Oracle歸檔日誌所在目錄時間不對&&Oracle叢集日誌時間顯示錯誤Oracle
- Nginx日誌格式設定Nginx
- nginx日誌分析工具goaccessNginxGo
- Nginx日誌配置詳解Nginx
- 按日期分割nginx日誌Nginx
- 自定義Nginx日誌格式Nginx
- 004 Nginx日誌挖掘accessLogNginx
- 通過helm部署EFK收集應用日誌,ingress-nginx日誌解析。應用日誌Nginx
- Apache 配置日誌切割Apache
- SLF4J記錄日誌&&日誌檔案的滾動策略__SpringBootSpring Boot
- Go中使用Zap日誌庫與Lumberjack日誌切割Go
- 處理nginx訪問日誌,篩選時間大於1秒的請求Nginx
- linux系統伺服器,nginx日誌切割儲存教程。Linux伺服器Nginx
- 使用goaccess統計nginx日誌GoNginx
- 日誌檔案過大清理
- 【MySQL日誌】MySQL日誌檔案初級管理MySql
- Linux下玩轉nginx系列(三)---nginx日誌配置檔案說明LinuxNginx
- 日誌記錄器
- ThinkPHP日誌記錄PHP
- ELK日誌系統之使用Rsyslog快速方便的收集Nginx日誌Nginx
- Linux 使用 crontab 定時拆分日誌、清理過期檔案Linux
- springboot使用logback記錄日誌,配置檔案Spring Boot