11月27日任務css
12.10 Nginx訪問日誌
12.11 Nginx日誌切割
12.12 靜態文件不記錄日誌和過時時間nginx
1.Nginx訪問日誌shell
示例一:vim
$remote_addrbash |
客戶端IP(公網IP)服務器 |
$http_x_forwarded_for | 代理服務器的IPcurl |
$time_local工具 |
服務器本地時間測試 |
$hosturl |
訪問主機名(域名) |
$request_uri |
訪問的url地址 |
$status |
狀態碼 |
$http_referer |
referer |
$http_user_agent |
user_agent |
2.Nginx日誌切割
示例一:由於Nginx不自帶日誌切割工具,因此自定義腳本借用
#! /bin/bash
## 假設nginx的日誌存放路徑爲/data/logs/
d=`date -d "-1 day" +%Y%m%d` 生成昨天的日期
logdir="/data/logs" 定義存放位置
nginx_pid="/usr/local/nginx/logs/nginx.pid" 定義位置,找他的pid
cd $logdir 進入目錄下
for log in `ls *.log` 作個for循環
do
mv $log $log-$d 作一個更名操做
done
/bin/kill -HUP `cat $nginx_pid` 從新加載一下,生成新的日誌文件
0 0 * * * /bin/bash /usr/local/sbin/nginx_log_rotate.sh
3.靜態文件不記錄日誌和過時時間
示例一:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 7d; 定義過時時間
access_log off; 關閉日誌記錄
}
location ~ .*\.(js|css)$
{
expires 12h;
access_log off;
}
cd /data/wwwroot/test.com
vim 1.gif
vim 2.js