最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx日志配置及狀態(tài)監(jiān)控方式解讀

 更新時(shí)間:2025年09月05日 11:32:30   作者:niechel  
文章詳細(xì)介紹了Nginx的配置技巧,包括日志配置(如access_log、log_format等模塊)、狀態(tài)監(jiān)控(如stub_status_model編譯選項(xiàng))以及高級(jí)配置(如log_not_found、log_subrequest等),幫助用戶全面掌握Nginx的日志管理和狀態(tài)監(jiān)控方法

一 Nginx請求簡介

1.1 請求頭部

對于HTTP而言,客戶端負(fù)責(zé)發(fā)起request請求,服務(wù)端負(fù)責(zé)response響應(yīng)。

  • request:包括請求行、請求頭部、請求數(shù)據(jù);
  • response:包括狀態(tài)行、消息報(bào)頭、響應(yīng)正文。
  1 [root@nginx ~]# curl -v www.odocker.com
  2 * About to connect() to www.odocker.com port 80 (#0)	#關(guān)于本次連接信息
  3 *   Trying 113.31.119.149...
  4 * Connected to www.odocker.com (113.31.119.149) port 80 (#0)
  5 > GET / HTTP/1.1				#HTTP版本
  6 > User-Agent: curl/7.29.0			#客戶端信息
  7 > Host: www.odocker.com				#請求的服務(wù)端主機(jī)
  8 > Accept: */*					#如上為請求
  9 >
 10 < HTTP/1.1 200 OK				#返回http版本
 11 < Server: nginx/1.16.1				#服務(wù)端Web類型
 12 < Date: Fri, 06 Mar 2020 13:09:40 GMT		#日期時(shí)間
 13 < Content-Type: text/html			#返回的類型
 14 < Content-Length: 13				#長度
 15 < Last-Modified: Thu, 05 Mar 2020 11:12:26 GMT	#日期時(shí)間
 16 < Connection: keep-alive			#長連接
 17 < ETag: "5e60de9a-d"				#Etag
 18 < Accept-Ranges: bytes				#大小單位
 19 <
 20 <h1>www</h1>					#具體內(nèi)容
 21 * Connection #0 to host www.odocker.com left intact

二 日志配置

2.1 日志相關(guān)配置

nginx日志相關(guān)涉及的配置有:

  • access_log:訪問日志;
  • log_format:日志格式;
  • rewrite_log:重定向日志;
  • error_log:錯(cuò)誤日志;

open_log_file_cache、log_not_found、log_subrequest。

nginx具備非常靈活的日志記錄模式,每個(gè)級(jí)別的配置可以有各自獨(dú)立的訪問日志。

日志格式通過log_format命令來定義。ngx_http_log_module:用于定義請求日志格式。

2.2 access_log配置

語法:

  • access_log path [format [buffer=size [flush=time]]];
  • access_log path format gzip[=level] [buffer=size] [flush=time];
  • access_log syslog:server=address[,parameter=value] [format];
  • access_log off; #不記錄日志

默認(rèn)值: access_log logs/access.log combined;

使用默認(rèn)combined格式記錄日志:access_log logs/access.log 或 access_log logs/access.log combined;

配置段: http, server, location, if in location, limit_except

參數(shù)解釋:

  • gzip:壓縮等級(jí)。
  • buffer:設(shè)置內(nèi)存緩存區(qū)大小。
  • flush:保存在緩存區(qū)中的最長時(shí)間。

2.3 log_format配置

語法:

  • log_format name string ……;

默認(rèn)值: log_format combined "……";

配置段: http

釋義:name表示格式名稱,string表示等義的格式。log_format有一個(gè)默認(rèn)的無需設(shè)置的combined日志格式,相當(dāng)于apache的combined日志格式。

  • 示例1:
  1 ……
  2     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
  3                       '$status $body_bytes_sent "$http_referer" '
  4                       '"$http_user_agent"';
  5 ……
  • 示例2:
  1 ……
  2     log_format  proxy  '$remote_addr - $remote_user [$time_local] "$request" '
  3                       '$status $body_bytes_sent "$http_referer" '
  4                       '"$http_user_agent" "$http_user_agent" ';
  5 ……

配置相關(guān)變量釋義:

  • $remote_addr:表示客戶端地址;
  • $remote_user:表示http客戶端請求Nginx認(rèn)證的用戶名;
  • $time_local:Nginx通用日志格式下的本地時(shí)間;
  • $request:request請求行,請求的URL、GET等方法、HTTP協(xié)議版本;
  • $request_length:請求的長度;
  • $request_time:請求處理時(shí)間,單位為秒,精度為毫秒;
  • $status:response返回狀態(tài)碼;
  • $body_bytes_sent:發(fā)送給客戶端的字節(jié)數(shù),不包括響應(yīng)頭的大小,即服務(wù)端響應(yīng)給客戶端body信息大??;
  • $http_referer:http上一級(jí)頁面,即從哪個(gè)頁面鏈接訪問過來的,用于防盜鏈、用戶行為分析;
  • $http_user_agent:http頭部信息,記錄客戶端瀏覽器相關(guān)信息;
  • $connection:連接的序列號(hào);
  • $connection_requesta:當(dāng)前通常一個(gè)連接獲得的請求數(shù)量;
  • $msec:日志寫入時(shí)間,單位為秒,精度為毫秒;
  • $pipe:如果請求是通過HTTP流水線(pipelined)發(fā)送,pipe值為‘p’,否則為“.”;
  • $http_x_forwarded_for:http請求攜帶的http信息。

提示:

  • 如果nginx位于負(fù)載均衡器,squid,nginx反向代理之后,web服務(wù)器無法直接獲取到客戶端真實(shí)的IP地址了。
  • $remote_addr獲取反向代理的IP地址。
  • 反向代理服務(wù)器在轉(zhuǎn)發(fā)請求的http頭信息中,可以增加X-Forwarded-For信息,用來記錄客戶端IP地址和客戶端請求的服務(wù)器地址。

2.4 open_log_file_cache配置

語法:

  • open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time];
  • open_log_file_cache off;

默認(rèn)值:open_log_file_cache off; #關(guān)閉open_log_file_cache

配置段:http,server,location

作用:對于每一條日志記錄,都將是先打開文件,再寫入日志,然后關(guān)閉。可以使用open_log_file_cache來設(shè)置日志文件緩存(默認(rèn)是off)。

參數(shù)釋義:

  • max:設(shè)置緩存中的最大文件描述符數(shù)量,如果緩存被占滿,采用LRU算法將描述符關(guān)閉。
  • inactive:設(shè)置存活時(shí)間,默認(rèn)是10s。
  • min_uses:設(shè)置在inactive時(shí)間段內(nèi),日志文件最少使用多少次后,該日志文件描述符記入緩存中,默認(rèn)是1次。
  • valid:設(shè)置檢查頻率,默認(rèn)60s。
  • off:禁用緩存。
  • 示例1:
open_log_file_cache max=1000 inactive=20s valid=1m min_uses=2;

2.5 log_not_found配置

  • 語法:log_not_found on | off;
  • 默認(rèn)值:log_not_found on;
  • 配置段:http,server,location
  • 作用:是否在error_log中記錄不存在的錯(cuò)誤,默認(rèn)是,即記錄。

2.6 log_subrequest配置

  • 語法:log_subrequest on | off;
  • 默認(rèn)值:log_subrequest off;
  • 配置段:http,server,location
  • 作用:是否在access_log中記錄子請求的訪問日志,默認(rèn)否,即不記錄。

2.7 rewrite_log配置

  • 語法: rewrite_log on | off;
  • 默認(rèn)值:rewrite_log off;
  • 配置段:http,server,location,if
  • 作用:由ngx_http_rewrite_module模塊提供的。用來記錄重寫日志的,對于調(diào)試重寫規(guī)則建議開啟。啟用時(shí)將在error log中記錄notice級(jí)別的重寫日志。

2.8 error_log配置

  • 語法:error_log file | stderr | syslog:server=address[,parameter=value] [debug | info | notice | warn | error | crit | alert | emerg];
  • 默認(rèn)值:error_log logs/error.log error;
  • 配置段:main,http,server,location
  • 作用:配置錯(cuò)誤日志。

三 狀態(tài)監(jiān)控

3.1 配置監(jiān)控

  • Nginx狀態(tài)監(jiān)控使用--with-http_stub_status_modele編譯模塊,語法:
  • 語法:stub_status on | off;
  • 默認(rèn)值:stub_status off;
  • 配置段:server,location

示例01:

  1 [root@nginx01 ~]# vi /etc/nginx/conf.d/status.conf
  2 server {
  3     server_name  status.linuxds.com;
  4 
  5     error_page  404 403 500 502 503 504  /error.html;
  6     location = /error.html {
  7         root    /usr/share/nginx/html;
  8     }
  9 
 10     location / {
 11         root    /usr/share/nginx/blog;
 12         index   index.html;
 13     }
 14     location /ok {
 15         alias   /usr/share/nginx/yes;
 16         index   index.html;
 17     }
 18     location /mystatus {
 19         stub_status on;
 20         access_log off;
 21     }
 22 }
  1 [root@nginx01 ~]# nginx -t -c /etc/nginx/nginx.conf
  2 [root@nginx01 ~]# nginx -s reload

瀏覽器訪問:http://status.linuxds.com/mystatus

釋義:

  • Active connections:當(dāng)前活躍的連接數(shù)。
  • server:表示Nginx啟動(dòng)到現(xiàn)在共處理了90個(gè)連接。
  • accepts:表示Nginx啟動(dòng)到現(xiàn)在共成功創(chuàng)建90次握手。
  • handled requests:表示總共處理了19次請求。
  • Reading:Nginx讀取到客戶端的 Header 信息數(shù)。
  • Writing:Nginx返回給客戶端的 Header 信息數(shù)。
  • Waiting:Nginx開啟keep-alive長連接情況下, 既沒有讀也沒有寫, 建立連接情況。

請求丟失數(shù)=(握手?jǐn)?shù)-連接數(shù))可以看出,本次狀態(tài)顯示沒有丟失請求。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Nginx配置文件

    詳解Nginx配置文件

    Nginx是lgor Sysoev為俄羅斯訪問量第二的rambler.ru站點(diǎn)設(shè)計(jì)開發(fā)的,Nginx功能豐富,可作為HTTP服務(wù)器,也可作為反向代理服務(wù)器,郵件服務(wù)器。這篇文章主要介紹了Nginx配置文件,需要的朋友參考下
    2017-01-01
  • Linux環(huán)境下nginx搭建簡易圖片服務(wù)器

    Linux環(huán)境下nginx搭建簡易圖片服務(wù)器

    這篇文章主要介紹了Linux環(huán)境下nginx搭建簡易圖片服務(wù)器,需要的朋友可以參考下
    2014-10-10
  • nginx提示:500 Internal Server Error錯(cuò)誤解決辦法

    nginx提示:500 Internal Server Error錯(cuò)誤解決辦法

    這篇文章主要介紹了 nginx提示:500 Internal Server Error錯(cuò)誤解決辦法的相關(guān)資料,這里提供了解決該問題的詳細(xì)步驟,希望能幫助到大家,需要的朋友可以參考下
    2017-08-08
  • Nginx實(shí)現(xiàn)精準(zhǔn)IP訪問控制的方法全攻略

    Nginx實(shí)現(xiàn)精準(zhǔn)IP訪問控制的方法全攻略

    在日常服務(wù)器運(yùn)維、前后端聯(lián)調(diào)、測試環(huán)境部署中,精準(zhǔn)控制訪問權(quán)限是高頻且核心的需求,Nginx?作為當(dāng)下最流行的?Web?服務(wù)器和反向代理工具,本文將從基礎(chǔ)用法入手,結(jié)合實(shí)際測試場景,拆解?Nginx?IP?訪問控制的核心指令、實(shí)用技巧、常見坑點(diǎn),需要的朋友可以參考下
    2026-03-03
  • Nginx中指令server_name的詳細(xì)使用指南

    Nginx中指令server_name的詳細(xì)使用指南

    對于Web開發(fā)者來說,Nginx是一個(gè)強(qiáng)大且靈活的Web服務(wù)器和反向代理服務(wù)器,下面這篇文章主要介紹了Nginx中指令server_name詳細(xì)使用的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-07-07
  • Nginx下支持Thinkphp URL Rewrite的配置示例

    Nginx下支持Thinkphp URL Rewrite的配置示例

    這篇文章主要介紹了Nginx下支持Thinkphp URL Rewrite的配置示例,本文直接給出配置示例,需要的朋友可以參考下
    2015-07-07
  • 解決nginx 503 Service Temporarily Unavailable方法示例

    解決nginx 503 Service Temporarily Unavailable方法示例

    這篇文章主要介紹了解決nginx 503 Service Temporarily Unavailable方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 通過Nginx反向代理實(shí)現(xiàn)IP訪問分流的示例代碼

    通過Nginx反向代理實(shí)現(xiàn)IP訪問分流的示例代碼

    本篇文章主要介紹了通過Nginx反向代理實(shí)現(xiàn)IP訪問分流的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • Nginx配置PATHINFO隱藏thinkphp index.php

    Nginx配置PATHINFO隱藏thinkphp index.php

    這篇文章主要介紹了Nginx配置PATHINFO隱藏thinkphp index.php,本文直接給出配置示例,需要的朋友可以參考下
    2015-07-07
  • Nginx之Http模塊系列之a(chǎn)utoindex模塊的具體使用

    Nginx之Http模塊系列之a(chǎn)utoindex模塊的具體使用

    這篇文章主要介紹了Nginx之Http模塊系列之a(chǎn)utoindex模塊的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03

最新評(píng)論

长春市| 稻城县| 虹口区| 岳普湖县| 红河县| 南投市| 永吉县| 宁武县| 芜湖县| 方正县| 江山市| 尚志市| 民县| 乌拉特中旗| 沙雅县| 江北区| 师宗县| 榆中县| 丰城市| 锡林郭勒盟| 白沙| 桃江县| 宝山区| 资阳市| 高安市| 武定县| 镇平县| 宜兴市| 盐亭县| 湖州市| 简阳市| 赞皇县| 仙居县| 隆回县| 镇巴县| 南康市| 吴旗县| 休宁县| 长寿区| 大姚县| 庆阳市|