Xdebug是一個(gè)開放源代碼的PHP程序調(diào)試器冻河,可以用來跟蹤精续,調(diào)試和分析PHP程序的運(yùn)行狀況。
一贿条、主要配置
1.日志
xdebug.trace_output_dir? ? //日志追蹤輸出目錄
xdebug.trace_output_name? ? //日志文件名
xdebug.trace_options? ? //記錄添加到文件中的方式:1=追加(如果存在該文件)|| 0(default)=覆蓋(如果存在該文件)
2.顯示數(shù)據(jù)
xdebug.collect_params? ? //非零值=控制function的參數(shù)顯示選項(xiàng)
????0=不顯示
????1=參數(shù)類型,值(例:array(9))
????2=同上1增热,CLI模式略微區(qū)別
????3=所有變量內(nèi)容
????4=所有變量內(nèi)容和變量名(例如:array(0=>9))
xdebug.collect_return? ? //1=顯示function返回值整以,Default 0 不顯示
xdebug.collect_vars? ? //1=顯示當(dāng)前作用域使用了哪些變量,顯示變量名峻仇,該選項(xiàng)不會記錄變量值
xdebug.collect_assigments? ? // 1=添加一行顯示變量賦值(若為1公黑,例$a=1;這類 Assignment Experssion會在trace文件里顯示)
3.格式
xdebug.trace_format? ? //日志追蹤輸出目錄
4.行為
xdebug.auto_trace? ? //1=打開自動(dòng)追蹤
xdebug.trace_enable_trigger? ? //1=使用XDEBUG_TRACE GET/POST觸發(fā)追蹤,或者通過設(shè)置cookie XDEBUG_TRACE.為了避免每次請求時(shí),都會生成相應(yīng)的trace追蹤文件凡蚜,你需要把a(bǔ)uto_trace設(shè)置為0
二人断、我的配置
三、審計(jì)方法
訪問php文件朝蜘,會對應(yīng)生成trace.XXXXXX.xt跟蹤日志文件恶迈,用Notepad++打開php文件,高亮顯示代碼谱醇,加上<?php 能更友好的顯示
打開phpstudy的php.ini配置文件
查看xdebug
然后刷新訪問一下測試的php文件暇仲,在xdebug目錄發(fā)現(xiàn)記錄的文件
利用Notepad++打開文件,如圖
四副渴、XDebug的黑科技
利用XDebug追蹤被加密的源代碼時(shí)奈附,可以打開追蹤日志文件煮剧,并搜索關(guān)鍵字passwd/eval函數(shù)等勉盅,并對特殊字符進(jìn)行合法轉(zhuǎn)義菇篡,即可獲得大致流程的源代碼驱还。