欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

聊聊配置?Nginx?訪問與錯誤日志的問題

 更新時間:2022年05月24日 16:22:06   作者:運維派  
這篇文章主要介紹了配置?Nginx?訪問與錯誤日志,Nginx是一個開放源代碼的高性能HTTP和反向代理服務(wù)器,負責(zé)處理Internet上某些最大站點的負載,對Nginx?錯誤日志相關(guān)知識感興趣的朋友一起看看吧

Nginx是一個開放源代碼的高性能HTTP和反向代理服務(wù)器,負責(zé)處理Internet上某些最大站點的負載。在管理NGINX網(wǎng)絡(luò)服務(wù)器時,你要執(zhí)行的最常見任務(wù)之一就是檢查日志文件。

在對服務(wù)器或應(yīng)用程序問題進行故障排除時,知道如何配置和讀取日志非常有用,因為它們提供了詳細的調(diào)試信息。

Nginx用兩種類型的日志記錄其事件:訪問日志和錯誤日志。訪問日志記錄有關(guān)客戶端請求的信息,錯誤日志記錄有關(guān)服務(wù)器和應(yīng)用程序問題的信息。

本教程概述了如何配置和讀取Nginx訪問和錯誤日志。配置Nginx訪問日志的格式與位置,配置錯誤日志格式與位置,默認的日志文件所在位置,讀取和理解Nginx日志文件每個字段。

配置Nginx訪問日志

每當(dāng)處理客戶請求時,Nginx都會在訪問日志中生成一個新記錄。每個事件記錄都包含一個時間戳,并包含有關(guān)客戶端和所請求資源的各種信息。訪問日志可以顯示訪問者的位置,訪問者的訪問的頁面等。

log_format 指令允許你定義記錄日志的格式。 access_log 指令啟用并設(shè)置日志文件的位置和使用的格式。

access_log 指令的最基本語法如下:

access_log log_file log_format;

其中 log_file 是日志文件的完整路徑, log_format 是日志文件使用的格式??梢栽?nbsp;http , server 或 location 指令的上下文中啟用訪問日志。

默認情況下,Nginx主配置文件中的 http 指令配置了全局訪問日志格式。

http {
  ...
  access_log  /var/log/nginx/access.log;
  ...
}

/etc/nginx/nginx.conf

為獲得更好的可維護性,建議為每個服務(wù)器設(shè)置一個單獨的訪問日志文件。在 server 指令中設(shè)置的 access_log 指令將覆蓋在 http 指令中設(shè)置的 access_log 。

http {
  ...
  access_log  /var/log/nginx/access.log;
  ...
  server {
    server_name domain.com
    access_log  /var/log/nginx/domain.access.log;
    ...
  }
}

/etc/nginx/conf.d/domain.com.conf

如果未指定日志格式,Nginx將使用預(yù)定義的combined組合格式,如下所示:

log_format combined '$remote_addr - $remote_user [$time_local] '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent"';

要更改日志記錄格式,請覆蓋默認設(shè)置或定義一個新設(shè)置。例如,定義一個名為 main 的新日志記錄格式,它將用添加 X-Forwarded-For header的值來擴展 combined 格式,在 http 或 server 中添加以下定義指令:

log_format  custom  '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';

要使用新日志格式,請在日志文件后指定其名稱,如下所示:

access_log  /var/log/nginx/access.log custom;

雖然訪問日志提供了非常有用的信息。但它會占用磁盤空間,并可能影響服務(wù)器性能。如果服務(wù)器資源不足,并且網(wǎng)站繁忙,則可能要禁用訪問日志。為此,請將 access_log 偽指令的值設(shè)置為 off 。理論上你不會出現(xiàn)這種情況,Nginx會自動刪除前期的日志文件:

access_log off;

配置錯誤日志

Nginx將應(yīng)用程序和常規(guī)服務(wù)器錯誤的消息寫入錯誤日志文件。如果你在Web應(yīng)用程序中遇到錯誤,則錯誤日志是你開始進行排查問題的第一個位置。 error_log 指令啟用并設(shè)置錯誤日志的位置和嚴(yán)重性級別。它采用以下格式,可以在 http , server 或 location 上下文中進行設(shè)置:

error_log log_file log_level

log_level 參數(shù)設(shè)置日志記錄級別。以下是按嚴(yán)重性從低到高列出的級別:

debug
info
notice
warn
error
crit
alert
emerg

每個日志級別包括更高級別。例如,如果你將日志級別設(shè)置為 warn ,則Nginx還將記錄 error , crit , alert 和 emerg 消息。未指定 log_level 參數(shù)時,默認為 error 。默認情況下, error_log 指令在主nginx.conf文件內(nèi)的 http 指令上下文中定義:

http {
  ...
  error_log  /var/log/nginx/error.log;
  ...
}

/etc/nginx/nginx.conf與訪問日志相同,建議為每個服務(wù)器設(shè)置一個單獨的錯誤日志文件,該文件將覆蓋更高級別的設(shè)置如http指令上下文。例如,要將domain.com的錯誤日志設(shè)置為 warn ,你可以使用:

http {
  ...
  error_log  /var/log/nginx/error.log;
  ...

  server {
    server_name domain.com
    error_log  /var/log/nginx/domain.error.log warn;
    ...
  }
}

無論何時修改配置文件,都必須重新加載Nginx服務(wù),以使更改生效。

日志文件的位置

在大多數(shù)Linux發(fā)行版中,例如Ubuntu ,CentOS和Debian。默認情況下,訪問和錯誤日志位于 /var/log/nginx 目錄中。

讀取和理解Nginx日志文件

你可以使用 cat , less , grep , cut , awk 等命令打開和解析nginx日志文件。以下是使用默認的Nginx日志格式的訪問日志文件的記錄:

192.168.33.1 - - [15/Oct/2019:19:41:46 +0000] "GET / HTTP/1" 200 396 "-" "Mozilla/0 (X11; Linux x86_64) AppleWebKit/536 (KHTML, like Gecko) Chrome/38120 Safari/536"

讓我們細分Nginx日志文件記錄的每個字段意味著什么:

  • $remote_addr – 192.168.33.1 -發(fā)出請求的客戶端的IP地址。
  • $remote_user  – - -HTTP身份驗證用戶。未設(shè)置用戶名時,此字段顯示 - 。
  • [$time_local] – [15/Oct/2019:19:41:46 +0000]

本地服務(wù)器時間。

  • "$request"  – "GET / HTTP/1.1" -請求類型,路徑和協(xié)議。
  • $status  – 200 -服務(wù)器響應(yīng)代碼。
  • $body_bytes_sent  – 396 -服務(wù)器響應(yīng)的大?。ㄒ宰止?jié)為單位)。
  • "$http_referer"  – "-" -引薦網(wǎng)址。
  • "$http_user_agent"  – Mozilla/5.0 ... -客戶端的用戶代理(網(wǎng)絡(luò)瀏覽器)。

使用 tail 命令實時觀看日志文件記錄: tail -f access.log

到此這篇關(guān)于配置 Nginx 訪問與錯誤日志的文章就介紹到這了,更多相關(guān)Nginx 錯誤日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx安裝圖解_動力節(jié)點Java學(xué)院整理

    nginx安裝圖解_動力節(jié)點Java學(xué)院整理

    這篇文章主要為大家詳細介紹了nginx安裝的圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Nginx域名轉(zhuǎn)發(fā)使用場景代碼實例

    Nginx域名轉(zhuǎn)發(fā)使用場景代碼實例

    這篇文章主要介紹了Nginx域名轉(zhuǎn)發(fā)使用場景代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • 文件上傳到服務(wù)器文件名中文亂碼問題

    文件上傳到服務(wù)器文件名中文亂碼問題

    上傳附件到部署服務(wù)器,但是上傳到服務(wù)器出現(xiàn)文件名中文亂碼,中文變成(?)問號,而且在本地測試是正常的,通過打印日志發(fā)現(xiàn),下面fileName亂碼,本文給大家講解文件上傳到服務(wù)器文件名中文亂碼問題解決方案,感興趣的朋友一起看看吧
    2024-02-02
  • nginx 配置跨域失效修復(fù)的方法示例

    nginx 配置跨域失效修復(fù)的方法示例

    這篇文章主要介紹了nginx 配置跨域失效修復(fù)的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Nginx實現(xiàn)動態(tài)封禁IP的步驟指南

    Nginx實現(xiàn)動態(tài)封禁IP的步驟指南

    在日常的生產(chǎn)環(huán)境中,網(wǎng)站可能會遭遇惡意請求、DDoS 攻擊或其他有害的訪問行為,為了應(yīng)對這些情況,動態(tài)封禁 IP 是一項十分重要的安全策略,本篇博客將介紹如何通過 NGINX 實現(xiàn)動態(tài)封禁 IP,從配置到自動化的實現(xiàn)步驟,需要的朋友可以參考下
    2025-02-02
  • Nginx 安裝詳細教程

    Nginx 安裝詳細教程

    Nginx是一款自由的、開源的、高性能的HTTP服務(wù)器和反向代理服務(wù)器,這篇文章主要介紹了Nginx 安裝詳細教程,需要的朋友可以參考下
    2020-02-02
  • 前端將項目部署到服務(wù)器(Nginx)的完整步驟

    前端將項目部署到服務(wù)器(Nginx)的完整步驟

    最近寫了一個項目,需要進行手機上測試,下面就需要前端自己將項目進行部署,這篇文章主要給大家介紹了關(guān)于前端將項目部署到服務(wù)器(Nginx)的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • nginx?配置指令之location使用詳解

    nginx?配置指令之location使用詳解

    這篇文章主要介紹了nginx?配置指令之location使用,Nginx最大的安全問題并不是其安全漏洞,而是在運維上面,尤其是錯誤配置導(dǎo)致的問題,對nginx?location使用感興趣的朋友一起看看吧
    2022-05-05
  • 使用Nginx中自帶的模塊配置縮略圖功能的教程

    使用Nginx中自帶的模塊配置縮略圖功能的教程

    Nginx的http_image_filter_module模塊可以用來處理縮略圖,這里我們就來看看使用Nginx中自帶的模塊配置縮略圖功能的教程,需要的朋友可以參考下
    2016-06-06
  • Nginx中return和rewrite的寫法及區(qū)別淺析

    Nginx中return和rewrite的寫法及區(qū)別淺析

    在Nginx中,return和rewrite都用于重定向,但有所區(qū)別,return立即終止請求并返回指定HTTP狀態(tài)碼,不額外請求,rewrite則重寫URI并引發(fā)新請求,需要的朋友可以參考下
    2024-09-09

最新評論