1. 程式人生 > >Nginx的訪問日誌,Nginx日誌切割,Nginx不記錄靜態檔案

Nginx的訪問日誌,Nginx日誌切割,Nginx不記錄靜態檔案

Nginx的訪問日誌

Nginx的日誌格式是在Nginx的主配置檔案中(/usr/local/nginx/conf/nginx.conf)

[[email protected] vhost]# vim /usr/local/nginx/conf/nginx.conf

這裡寫圖片描述

可以將日誌格式名稱改一下,改為shaui

這裡寫圖片描述

Nginx日誌欄位的含義

這裡寫圖片描述

在主配置檔案中定義日誌的格式,在虛擬主機配置檔案中定義日誌路徑。

開啟虛擬主機配置檔案

[[email protected] vhost]# vim test.com.conf 

access_log /tmp/test.com.log shuai;

這裡寫圖片描述
注意,Nginx配置檔案寫完一行要加“;”,不然就是錯誤。

檢查配置檔案語法並重新載入配置檔案

[[email protected] vhost]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[[email protected] vhost]# /usr/local/nginx/sbin/nginx -s reload

檢測:

[[email protected] vhost]# curl -x127.0.0.1:80 test2.com/index.html -I
HTTP/1.1 301 Moved Permanently
Server: nginx/1.12.2
Date: Mon, 08 Jan 2018 12:41:20 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location: http://test.com/index.html

[[email protected] vhost]# curl -x127.0.0.1:80 test3.com/index.html -I
HTTP/1.1 301 Moved Permanently
Server: nginx/1.12.2
Date: Mon, 08 Jan 2018 12:41:26 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location: http://test.com/index.html

[
[email protected]
vhost]# cat /tmp/test.com.log 127.0.0.1 - [08/Jan/2018:20:41:20 +0800] test2.com "/index.html" 301 "-" "curl/7.29.0" 127.0.0.1 - [08/Jan/2018:20:41:26 +0800] test3.com "/index.html" 301 "-" "curl/7.29.0"

Nginx日誌切割

nginx由於沒有自帶的日誌切割工具,在切割日誌時,需要藉助於系統帶的日誌切割工具,或者是自己寫一個日誌切割指令碼。

自己寫一個日誌切割指令碼。指令碼統一儲存/usr/local/sbin/
先自定義一個指令碼:

[[email protected] vhost]# vim /usr/local/sbin/nginx_logrotate.sh


#! /bin/bash
## 假設nginx的日誌存放路徑為/tmp/
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(重新載入檔案),確保與虛擬主機配置檔案變更保持同步
#該地址來自nginx配置檔案
cd $logdir
for log in `ls *.log`
do
    mv $log $log-$d
done
#此處使用通配進行迴圈,並改名字(切割是每天產生的日誌重新命名)
/bin/kill -HUP `cat $nginx_pid`
#執行此命令進行過載生成新的日誌檔案來記錄新的日誌

執行指令碼:

[[email protected] vhost]# sh -x /usr/local/sbin/nginx_logrotate.sh 
++ date -d '-1 day' +%Y%m%d
+ d=20180108
+ logdir=/tmp/
+ nginx_pid=/usr/local/nginx/logs/nginx.pid
+ cd /tmp/
++ ls test.com.log
+ for log in '`ls *.log`'
+ mv test.com.log test.com.log-20180108
++ cat /usr/local/nginx/logs/nginx.pid
+ /bin/kill -HUP 1513

-x : 作用是顯示指令碼執行過程
注意:
這只是對日誌進行了切割,對日誌進行刪除需要結合任務計劃cron使用。切割也得配合cron使用。

靜態檔案不記錄日誌和過期時間

在配置檔案中加上配置:

開啟配置檔案:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
    expires         7d;
    access_log off;
}
location ~.*\.(js|css)$
{
    expires         12h;
    acces_log off;
}



[[email protected] vhost]# vim test.com.conf

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
 #匹配檔案型別
{
      expires      7d;
      #過期時間為7天
      access_log off;  
      #不記錄該型別檔案的訪問日誌     
}   
location ~ .*\.(js|css)$
{
      expires      12h;
      #過期時間為12小時
      access_log off;
      #不記錄該型別檔案的訪問日誌
}

這裡寫圖片描述

檢查配置檔案語法並重新載入配置檔案:

[[email protected] vhost]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[[email protected] vhost]# /usr/local/nginx/sbin/nginx -s reload

測試:

[[email protected] test.com]# curl -x127.0.0.1:80 test.com/1.gif
shjdkjhkasb
[[email protected] test.com]# curl -x127.0.0.1:80 test.com/2.js
ajkfdchb
[[email protected] test.com]# curl -x127.0.0.1:80 test.com/index.html
test.com
[[email protected] test.com]# cat /tmp/test.com.log
127.0.0.1 - [09/Jan/2018:00:39:45 +0800] test.com "/index.html" 200 "-" "curl/7.29.0"

相關推薦

Nginx訪問日誌Nginx日誌切割Nginx記錄靜態檔案

Nginx的訪問日誌 Nginx的日誌格式是在Nginx的主配置檔案中(/usr/local/nginx/conf/nginx.conf) [[email protected] vhost]# vim /usr/local/nginx/conf/n

訪問日誌記錄靜態檔案切割靜態元素過期時間

11月16日任務 11.22 訪問日誌不記錄靜態檔案 11.23 訪問日誌切割 11.24 靜態元素過期時間     11.22、 訪問日誌不記錄靜態檔案   網站大多元素為靜態檔案,如圖片

42.訪問日誌記錄靜態檔案切割 靜態元素過期時間

11.22 訪問日誌不記錄靜態檔案 11.23 訪問日誌切割 11.24 靜態元素過期時間 擴充套件  apac

Linux -LNMP-訪問日誌記錄靜態檔案

網站大多元素為靜態檔案,如圖片、css、js等,這些元素可以不用記錄vim /usr/local/apache/conf/xetra/httpd-vhosts.conf 把虛擬主機配置檔案改成如下:<VirtualHost :80>DocumentRoot "/data/wwwroot/www.

LAMP架構十( Apache訪問日誌記錄靜態檔案

十、訪問日誌不記錄靜態檔案         網站的頁面會有很多元素,尤其是圖片,js,css,等靜態元素非常多,每一次訪問都會訪問大量的靜態元素,這些元素請求都會被記錄在日誌中,因此日誌的增長速度非常快,然而記錄靜態元素的意義並不大,因此我們需要限制靜

LAMP架構(apache訪問日誌記錄靜態文件靜態元素過期時間apache日誌切割

訪問日誌不記錄靜態文件 靜態文件過期 apache日誌切割 一、apache訪問日誌不訪問靜態文件瀏覽器打開後按f12會會出現一個界面,點network,會出現很多請求,訪問日誌裏會記載,有些靜態的圖片或者文件也會記載,太浪費磁盤空間和磁盤io。所以我們要讓日誌不記錄靜態文件[root@abc ~

nginx訪問日誌配置+日誌切割+記錄靜態文件日誌+設置靜態文件過期時間

nginx日誌 nginx日誌切割 nginx設置靜態文件過期時間與不記錄 nginx設置日誌格式 nginx訪問日誌 查看nginx.conf文件 vim /usr/local/nginx/conf/nginx.conf 中間有一行是定義log的格式 log_format combined_

11.22-11.24訪問日誌記錄靜態文件訪問日誌切割靜態元素過期時間

靜態元素 不記錄 11.22 訪問日誌不記錄靜態文件11.23 訪問日誌切割11.24 靜態元素過期時間擴展 apache日誌記錄代理IP以及真實客戶端IP http://ask.apelearn.com/question/960apache只記錄指定URI的日誌 http://ask.apele

4.16訪問日誌記錄靜態文件訪問日誌切割以及靜態元素過期時間

靜態元素過期時間 訪問日誌切割 訪問日誌不記錄靜態文件 一個網站會有很多元素,尤其是圖片、js、css等靜態文件非常多,每個用戶請求一個頁面都會訪問諸多的圖片,這些元素都會被記錄在日誌中,如果一個網站訪問量很大,那麽這些日誌會增長的非常快,這樣不僅會對服務器的磁盤造成影響,更會影響磁盤的讀寫速度。所以

日誌記錄靜態文件日誌切割靜態元素過期時間

日誌 靜態過濾 訪問日誌不記錄靜態文件 1.過濾靜態文件:修改虛擬主機配置文件 [root@weixing01 ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <IfModule mod_rewrite.c>

2018-3-14 12周3次課 Nginx訪問日誌日誌分割、日誌記錄靜態文件和過期時間

Nginx12.10 Nginx訪問日誌·日誌格式:[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf搜索log_format(雖然紅框中有三行,但實際上時一行配置,以分號為結尾)combined_realip 定義日誌格式名字,此處定義成什麽,那

nginx日誌記錄靜態文件訪問和緩存

主機名 ranges 請求 任務 add 再次 瀏覽器中 localhost 小時 nginx訪問日誌nginx和apache的訪問日誌一樣可以記錄的指定信息,如記錄服務器時間,訪問的客戶端ip、訪問的url和訪問狀態碼等信息,這些信息會規律的記錄到訪問日誌中主配置文件中定

11.22 訪問日誌記錄靜態文件 11.23 訪問日誌切割 11.24 靜態元素過期時間

11.22 訪問日誌不記錄靜態文件 11.23 訪問日誌切割 11.24 靜態元素過期時間- 11.22 訪問日誌不記錄靜態文件 - 11.23 訪問日誌切割 - 11.24 靜態元素過期時間 - 擴展 1. apache日誌記錄代理IP以及真實客戶端IP http://ask.apelearn.com/q

訪問日誌記錄靜態文件、訪問日誌切割靜態元素過期時間

lamp架構訪問日誌不記錄靜態文件當訪問很多圖片,文檔等靜態資源的時候,會加大你日誌的容量,日誌容量占用你磁盤空間後,會出現服務器宕機等很嚴重的問題,這時需要將日誌進行配置優化。當訪問網頁時不記錄這些圖片、css、js等信息日誌。1、[root@centos7 111.com]# vi /usr/local/

2018-3-5 10周4次課 訪問日誌記錄靜態文件、訪問日誌切割靜態元素過期時間

訪問日誌 靜態元素 11.22 訪問日誌不記錄靜態文件·網站大多元素為靜態文件,如圖片、css、js等,這些元素可以不用記錄原因:如果不去限制,那麽會消耗大量的磁盤空間和IO,而且這些文件無意義。編輯http-vhost配置文件:[root@localhost ~]# vim /usr/local/a

11.22 訪問日誌記錄靜態文件;11.23 訪問日誌切割;11.24 靜態元素過期時間

訪問日誌不記錄靜態文件 訪問日誌切割 靜態元素過期時間 擴展: apache日誌記錄代理IP以及真實客戶端IP :http://ask.apelearn.com/question/960apache只記錄指定URI的日誌 : http://ask.apelearn.com/question/981

lamp-日誌設置(訪問日誌切割記錄靜態文件日誌、緩存文件過期時間)

lamp 訪問日誌 訪問日誌切割 設置靜態文件不記錄日誌 設置緩存靜態文件過期時間 訪問日誌不記錄指定類型的文件 在網站大多數元素為靜態文件,比如圖片、css、js等,這些靜態文件都可以不用記錄,我們只需要記錄哪個ip訪問了那個網頁就可以; 編輯配置文件 vim /usr/local/ap

11.22 訪問日誌記錄靜態文件11.23 訪問日誌切割11.24 靜態元素過期時間

十周四次課(3月5日)11.22 訪問日誌不記錄靜態文件11.23 訪問日誌切割11.24 靜態元素過期時間編輯虛擬配置文件:vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf11.23 訪問日誌切割修改完配置文件後,需要重新訪問下網址才能生動生成日誌文

四十二、訪問日誌記錄靜態文件、訪問日誌切割靜態元素過期時間

訪問日誌 靜態元素過期時間 一、訪問日誌不記錄靜態文件訪問日誌:可以記錄網站的訪問情況,還可以在網站有異常發生時幫助我們定位問題,比如當有攻擊時,是可以通過查看日誌看到一些規律的。靜態元素:一個網站有很多元素,比如圖片、js、css等靜態文件,這些就是靜態元素。QQ瀏覽器,按F12可以查看它的靜態元素

Apache訪問日誌訪問日誌記錄靜態文件、訪問日誌切割

Apache訪問日誌 訪問日誌不記錄靜態文件 訪問日誌切割 1、Apache 訪問日誌 輸入命令 cat /usr/local/apache2.4/conf/extra/httpd-vhosts.conf,回車,見下圖,這個虛擬機的訪問日誌就在 /logs/111.com-access_log