Профилирование XDebug в PHP - не удается получить вывод

у меня странная проблема. Я настроил 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 второе время загрузки страницы, и я не смог проследить его через код.

5 ответов


комментарий xdebug.profiler_output_dir и xdebug.profiler_output_name и посмотрите, можете ли вы найти вывод в разделе /tmp/.


есть также проблема с папками / tmp в некоторых дистрибутивах, я не мог получить вывод на centos 7, а затем я нашел этой

Итак, я поставил

xdebug.profiler_output_dir= / главная/jirka / профиль

установите 777 и теперь все в порядке.


другой возможной причиной этой проблемы являются разрешения на папку profiler_output_dir.

добавление разрешений на запись в группу и владельца разрешило проблему для меня:

sudo chmod go+w /home/dimitris/cachegrind/

кроме того, остерегайтесь ограничений доступа, таких как права доступа, группы, владелец и SElinux...


требуется полный путь, а не только путь:

xdebug.profiler_append=1
xdebug.profiler_output_dir ="/home/username/debug/xdebug/profiler_output_dir"
xdebug.profiler_output_name = "cachegrind.out.%s.%H"