nginx error_log 錯誤日誌配置說明

pythontab發表於2016-07-02

nginx的error_log型別如下(從左到右:debug最詳細 crit最少): 

[ debug | info | notice | warn | error | crit ] 

例如:error_log logs/nginx_error.log  crit; 

解釋:日誌檔案儲存在nginx安裝目錄下的 logs/nginx_error.log ,錯誤型別為 crit ,也就是記錄最少錯誤資訊;


注意error_log off並不能關閉日誌記錄功能,它將日誌檔案寫入一個檔名為off的檔案中,如果你想關閉錯誤日誌記錄功能,應使用以下配置: 

error_log /dev/null crit; 

把儲存位置設定到Linux的黑洞中去 


錯誤處理:

nginx在讀取配置檔案指定的錯誤日誌路徑前將使用編譯的預設日誌位置,如果執行nginx的使用者對該位置沒有寫入許可權,nginx將輸出如下錯誤: 

[alert]: could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied) log_not_found 語法:log_not_found on | off 

預設值:on 

使用欄位:location 

這個引數指定了是否記錄客戶端的請求出現404錯誤的日誌,通常用於不存在的robots.txt和favicon.ico檔案,例如: location = /robots.txt { log_not_found off; } 


最後:所有nginx配置發生改變時,最好都使用如下命令測試配置是否錯誤後再使用 -s reload 過載 

/usr/local/nginx/sbin/nginx –t 

說明: 

以上是nginx的預設安裝路徑,如果改變了要相應的修改成自己nginx對應的路徑。


輸入後如果提示如下,則表示配置無誤: 

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

 

這時再使用過載命令讓Nginx平滑的重新載入配置即可,而不會影響正常訪問: 

/usr/local/nginx/sbin/nginx -s reload


相關文章