首頁 >後端開發 >php教程 >PHP程式設計師必須知道的開啟存取日誌和開啟錯誤日誌

PHP程式設計師必須知道的開啟存取日誌和開啟錯誤日誌

php是最好的语言
php是最好的语言原創
2018-07-30 14:13:004499瀏覽

PHP程式設計師必須知道的開啟存取日誌和開啟錯誤日誌

前言

本來準備講解nginx和apache的日誌的,但是個人不太推薦apache(純屬個人愛好),這裡就不介紹apache的日誌了。

身為程式設計師,比碼程式碼還重要那麼一點點的東西就是日誌的分析和查詢。以下列出常見日誌及設定方法。

設定檔

nginx分access_log和error_log兩種日誌

設定需要在nginx.conf中,預設透過原始碼包編譯安裝nginx目錄應在

/usr/local/nginx

目錄下,如果你透過yum或其他方式安裝,不清楚或不知道nginx具體安裝目錄,可以使用

find / -name nginx.conf

or

nginx -V | grep prefix
-------------
nginx version: nginx/1.13.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module

開啟存取日誌

如果是你原始碼包預設安裝的,開啟路徑如下

vim /usr/local/nginx/nginx.conf

找到如下內容

http {
    include       mime.types;
    default_type  application/octet-stream;

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

    access_log  logs/access.log  main;
    
    ...
}

將log_format到access_log的註解開啟即可,log_format可定義nginx的日誌規格。

log_format預設規格參數表

客戶端/使用者的IP位址存取時間請求方式請求位址請求狀態碼與HTTP狀態碼一致請求的位址大小以bytes格式計算
名稱 註解
#$remote_addr
#$time_local
#$request
$status
$body_bytes_sent

$http_referer

請求來源,從什麼地方存取的

$http_user_agent

使用者資訊(瀏覽器資訊)

##$http_x_forwarded_for

#轉送IP位址

開啟錯誤日誌

如果是你原始碼包預設安裝的,開啟路徑如下

vim /usr/local/nginx/nginx.conf

找到以下內容

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
將註解刪除即可,你可以將不同的錯誤類型分開儲存如
error_log logs/error.log notice;

notice既為錯誤類型,不寫則是全部。

致謝

謝謝你看到這裡,日誌操作與分析的相關文章後面我還會寫一些,希望可以幫助到你。謝謝

### 程式碼多變,初心不變#########相關文章:#########php-cgi.exe 開啟錯誤日誌#### ########教你開啟PHP的error_log日誌的方法#########相關影片:#########PHP開發實戰之製作簡單的日曆教學### ###

以上是PHP程式設計師必須知道的開啟存取日誌和開啟錯誤日誌的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn