Nginx配置——不記錄指定文件類型日誌

## 查看nginx配置文件的日誌格式  html

[root@aminglinux ~]# cd /usr/local/nginx/conf/vhosts/linux

[root@aminglinux vhosts]# vim ../nginx.confnginx

WEBRESOURCE1742321ec34a33951dc056b1ae3da

wyy    日誌名字,能夠自定義apache

$remote_addr   遠程的ipvim

$http_x_forwarded   代理的ip瀏覽器

$time_local   時間ssh

$host   域名curl

$request_uri   訪問的地址ide

$status   狀態碼工具

## 使用指定的日誌格式

[root@aminglinux vhosts]# vim test.conf

access_log /tmp/access.log wyy;

WEBRESOURCE724fca843c2a8dc34c57be62af1c1

## 檢查並從新加載

[root@aminglinux vhosts]# /usr/local/nginx/sbin/nginx -t

[root@aminglinux vhosts]# /usr/local/nginx/sbin/nginx -s reload

 

## 測試

[root@aminglinux vhosts]# curl -x127.0.0.1:80 www.test.com/sfsfsfsfs  -I

HTTP/1.1 404 Not Found

Server: nginx/1.6.2

Date: Wed, 26 Oct 2016 14:38:28 GMT

Content-Type: text/html

Content-Length: 168

Connection: keep-alive

## 查看生成的日誌

[root@aminglinux vhosts]# ls /tmp/access.log

/tmp/access.log

[root@aminglinux vhosts]# cat /tmp/access.log

127.0.0.1 - [26/Oct/2016:22:38:28 +0800]www.test.com "/sfsfsfsfs" 404"-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2"

解釋說明:

這說是咱們剛剛用curl測試訪問產生的日誌,也能夠用瀏覽器訪問一下 

訪問頁面,會看到好多日誌,爲何會這麼多?由於咱們沒有限制它去記錄圖片(png,gif等),就像apache的日誌同樣,能夠去掉的,怎麼去配置呢?

## 配置不記錄指定類型日誌

[root@aminglinux vhosts]# vim test.conf

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {

        access_log off;

 }

WEBRESOURCEf8dd6439eaf50ed8b174fbed3ea7d

## 檢查並從新加載

[root@aminglinux vhosts]# /usr/local/nginx/sbin/nginx -t

[root@aminglinux vhosts]# /usr/local/nginx/sbin/nginx -s reload

## 爲了便於測試,把以前的日誌內容清空

[root@aminglinux vhosts]# >/tmp/access.log

[root@aminglinux vhosts]# cat /tmp/access.log

[root@aminglinux vhosts]#

## 去訪問網頁,而後再查看日誌就不會看到圖片了。可是仍是會有好多包含static或cache路徑的一些文 件,這些也不須要,也要去作一下配置

location ~ (static|cache)

 {

       access_log off;

 }

WEBRESOURCEd88a03902373ae659726864e3319e

注:location是有前後順序的,若是匹配的第一個就不會再匹配第二個,因此必定要區分前後順序,放在哪裏合適。

 

思考 :這個日誌配置好了後,可能會一直寫一直/tmp/access.log裏寫,假如日誌不去管它,終有一天會把你的硬盤寫滿,因此咱們須要作一個日誌的切割,天天去生成一個新的,而後把超過多少天的日誌給刪除,這個如何去作?(它不像apache有一個工具,nginx沒有工具,須要咱們本身去寫腳本)

相關文章
相關標籤/搜索