本文目錄一覽:
- 1、php該在哪裡寫日誌?怎麼寫日誌?日誌是做什麼用的?
- 2、如何在php-fpm與php.ini
- 3、怎麼設置php.ini,讓所有錯誤都不提示
- 4、linux如何查看四小時之前錯誤日誌
- 5、如何開啟PHP日誌功能?
php該在哪裡寫日誌?怎麼寫日誌?日誌是做什麼用的?
所謂的日誌就是記錄系統運行狀態的數據。
一般是將信息記錄到文本文件或資料庫中。
比如:
?php
function writeLog($msg){
$logFile = date(‘Y-m-d’).’.txt’;
$msg = date(‘Y-m-d H:i:s’).’ ‘.$msg.”\r\n”;
file_put_contents($logFile,$msg,FILE_APPEND );
}
//調用上面的函數,寫一條信息進日誌文件
writeLog(‘這是測試日誌信息’);
?
如何在php-fpm與php.ini
/usr/local/php/sbin/php-fpm
/usr/local/php/etc/php-fpm.conf
/usr/local/php/etc/php.ini
一,php-fpm的啟動參數
#測試php-fpm配置
/usr/local/php/sbin/php-fpm -t
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -t
#啟動php-fpm
/usr/local/php/sbin/php-fpm
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf
#關閉php-fpm
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`
#重啟php-fpm
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
二,php-fpm.conf重要參數詳解
pid = run/php-fpm.pid
#pid設置,默認在安裝目錄中的var/run/php-fpm.pid,建議開啟
error_log = log/php-fpm.log
#錯誤日誌,默認在安裝目錄中的var/log/php-fpm.log
log_level = notice
#錯誤級別. 可用級別為: alert(必須立即處理), error(錯誤情況), warning(警告情況), notice(一般重要信息), debug(調試信息). 默認: notice.這樣試試呢如果還有不明白的話,你也可以去後盾人平台看看php基礎教學視頻看看,也是不錯的選擇,希望能幫到你,給個採納吧╮( ̄▽ ̄)╭謝謝
怎麼設置php.ini,讓所有錯誤都不提示
使用任一文本編輯器打開php.ini文件
搜索找到display_errors所在的行
如果前面有#號,則刪除#(#為注釋符號,該行#後面的內容都是注釋內容),如果該行前面有#,則該行的設置為注釋內容不會生效,所以要先去除#(例如你找到一行內容為#display_errors = Off,則去掉前面的#即可生效),沒有則忽略此步驟
將display_errors的值改為Off
保存文件
重啟伺服器即可
擴展:
php.ini為php環境的配置文件,通常所有配置都已經寫好,但並沒有開啟,它們會在行首添加#以注釋掉此功能。需要修改的時候,只需要刪除#即可打開功能,不需要自己寫一條新的配置。
更多配置內容可以參看php的官方文檔。
linux如何查看四小時之前錯誤日誌
連接相應的linux主機,輸入對應的指令就可以看到了。
linux下查看php錯誤日誌的方法,打開php.ini配置文件開啟錯誤日誌,通過php.ini來查看錯誤日誌存放地址或者在一個php文件中輸出 phpinfo,查看錯誤日誌存放位置,重啟web伺服器,查看錯誤日誌存放位置,執行【tail -f 50 /var/php_errors.log】命令就可以查看。
linux系統基本命令:
id命令:id命令用於顯示用戶的ID,以及所屬群組的ID,id命令已經默認預裝在大多數Linux系統中,id會顯示用戶以及所屬群組的實際與有效ID,若兩個ID相同則僅顯示實際ID。
ncftp命令:ncftp命令是文字模式FTP程序中的佼佼者,它具備多樣特色, 包括顯示傳輸速率,下載進度,自動續傳,標住書籤,可通過防火牆和代理伺服器等。
當不指定用戶名時,ncftp 命令會自動嘗試使用匿名賬戶anonymous 去連接遠程FTP伺服器,不需要用戶輸入賬號和密碼。
如何開啟PHP日誌功能?
在php編程中,對於一些訪問沒有明顯錯誤提示的php頁面,可以通過error_log來做進一步的判定。
但出於種種原因,有些伺服器並沒有開啟PHP的error_log功能。
測試或其它需要時,可以打開一下,方法如下。
編輯php.ini,將log_errors設置為on:
log_errors = On
然後,重啟apache即可。
如成功開啟,就可以跟蹤到對應的錯誤提示:
[Mon Sep 24 16:57:01 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2
[Mon Sep 24 16:57:02 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2
[Mon Sep 24 16:57:03 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line 2
[Mon Sep 24 16:57:04 2012] [error] [client 218.5.80.210] PHP Warning: fsockopen() has been disabled for security reasons in /home/bccgi-bin/fsockopen.php on line
另外,注意在Windows環境下,除了將log_errors設置為on外,還需要定義error_log的路徑及文件名:
error_log = d:/temp/error.log
(此目錄需要授予php標識用戶的修改許可權,否則日誌文件無法生成)
IIS沒有error_log的概念,所以需要另外定義。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232036.html