Подтвердить что ты не робот

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

4b9b3361

Ответ 1

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

Ответ 2

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

Итак, я установил

xdebug.profiler_output_dir =/дом/Ирка/Профиль

chmod 777/home/jirka/profile и теперь все нормально.

Ответ 3

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

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

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

Ответ 4

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

Ответ 5

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

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