簡體   English   中英

PHP中的XDebug分析 - 無法獲得輸出

[英]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_dirxdebug.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM