Профилирование 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"