[英]XDebug profiling in PHP - can't get output
我有一個奇怪的問題。 我已經設置了XDebug來分析我們正在處理的PHP應用程序。 我相信一切都設置正確但我運行時沒有輸出。 我的配置如下所示:
zend_extension="/usr/local/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so
[XDebug]
xdebug.profiler_append = 1
xdebug.profiler_enable = 0 (I've tried this both on and off)
xdebug.profiler_enable_trigger = 1
xdebug.profiler_output_dir = "/debug/xdebug/profiler_output_dir"
xdebug.profiler_output_name = "cachegrind.out.%p"
所有phpinfo()
設置都應該匹配。 輸出目錄的權限現在設置為777,所以我可以測試它。 我也試過使用public_html下的目錄,但沒有運氣。 我用來啟動探查器的URL是:
http://example.com/my_page.php?XDEBUG_PROFILE
-or-
http://example.com/my_page.php?XDEBUG_PROFILE=1
兩者都不起作用。 任何幫助將不勝感激!! 這個應用程序有5-6秒的頁面加載時間,我無法通過代碼跟蹤它。
某些發行版上的/ tmp文件夾也存在問題,我無法在centos 7上獲得輸出然后我發現了這一點
所以,我已經設定了
xdebug.profiler_output_dir = /家庭/爾卡/ profile文件
chmod 777 /home/jirka/profile
現在好了。
注釋掉xdebug.profiler_output_dir
和xdebug.profiler_output_name
,看看是否可以在/tmp/
下找到輸出。
此問題的另一個可能原因是profiler_output_dir文件夾的權限。
向組和所有者添加寫入權限為我解決了問題:
sudo chmod go+w /home/dimitris/cachegrind/
需要完整路徑,而不僅僅是路徑:
xdebug.profiler_append=1
xdebug.profiler_output_dir ="/home/username/debug/xdebug/profiler_output_dir"
xdebug.profiler_output_name = "cachegrind.out.%s.%H"
另外,請注意訪問權限,組,所有者和SElinux等訪問限制...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.