Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Я использую Zend Framework 3 с PhpStorm, я устанавливаю LAMP на Ubuntu 18.04.

При отладке кода я включаю значок отладки [расширение] в браузере Chrome, затем включаю запуск прослушивания в PhpStorm, затем устанавливаю точки останова в методе контроллера домашней страницы, откуда загружается страница, а затем обновляю страницу, чтобы проверить, останавливается ли она на точки останова.

Я не уверен, что я упустил в настройке, не могу отладить код. Любая помощь очень ценится.

и т. д. / PHP / 7.2 / доступные моды / xdebug.ini

xdebug.show_error_trace = 1
zend_extension=/usr/lib/php/20170718/xdebug.so
xdebug.remote_autostart = 1
xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.remote_host = 127.0.0.1
xdebug.remote_log = /tmp/xdebug_remote.log
xdebug.remote_mode = req
xdebug.remote_port = 9001
xdebug.idekey = PHPSTORM
xdebug.remote_connect_back=1

и т. д. / php / 7.2 / apache2 / php.ini

[xdebug]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

Детали версии PHP:

shoebaamir123@ubuntu:~$ php -v
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
    with Xdebug v2.6.0, Copyright (c) 2002-2018, by Derick Rethans

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Xdebug не работает [не останавливается в точке останова] в Ubuntu 18.04, PhpStorm, Zend Framework 3

Что выводит «Выполнить -> Проверка отладки веб-сервера», когда вы нажимаете кнопку «Проверить»? Вы создали конфигурацию сервера развертывания?

Alexey 10.01.2019 08:37

@Alexey "Выполнить -> Проверка отладки веб-сервера" -> "Путь для создания сценария проверки: / var / www / html / crud" и "URL-адрес сценария проверки: 127.0.0.1"

Aamir 10.01.2019 08:40

обновите свой вопрос, добавив снимок экрана с его выводом

Alexey 10.01.2019 08:41

Также в информационном блоке выводится «Пожалуйста, настройте локальный и веб-путь к сценарию проверки».

Aamir 10.01.2019 08:41

@Alexey Я добавил снимок экрана, о котором идет речь

Aamir 10.01.2019 08:42

После того, как я нажму «Подтвердить», появится сообщение «Указанный URL недоступен по причине:« Запрос не выполнен с кодом состояния 404 »».

Aamir 10.01.2019 08:43

вам нужно создать локальную или удаленную конфигурацию веб-сервера, я думаю, это в разделе «Настройки -> Сборка, выполнение, развертывание -> Развертывание», затем «+» и выберите корневой каталог вашего проекта, в который он помещает тестовый файл отладки. подтверждать

Alexey 10.01.2019 08:47

Примечание: ваш уровень языка PHP - 5.6, а ваш интерпретатор - 7.2.12 ;-)

lucid 10.01.2019 08:49

@Alexey После того, как я нажму "+", он покажет мне 6 вариантов FTP, FTPS, SFTP, Локальный или смонтированный сервер, На месте, Группа серверов. Какой мне выбрать?

Aamir 10.01.2019 08:53

@lucid да Уровень языка PHP отображается 5.6, а поле отключено, как я могу его изменить?

Aamir 10.01.2019 08:55

зависит от того, где находятся файлы вашего проекта. Моя ставка должна быть "Местная". Затем выберите папку, в которой находится корень вашего документа, введите URL-адрес веб-сервера и переключитесь на вкладку «Сопоставления» и заполните три поля. Затем попробуйте сценарий проверки еще раз и просмотрите журнал доступа вашего веб-сервера, чтобы узнать, где он пытается найдите сценарий временной проверки, затем соответствующим образом скорректируйте пути в сопоставлениях, пока не получите результаты в окне сценария проверки.

Alexey 10.01.2019 08:56

@Alexey После настройки путей он показывает вывод в окне сценария проверки, но отладчик все еще не останавливается в точке останова. Скриншот прилагаю.

Aamir 10.01.2019 09:05

Пожалуйста, покажите свой журнал xdebug для такой неудачной попытки отладки. Если Xdebug видит флаг «отладить меня» (cookie в вашем случае; хотя у вас есть xdebug.remote_autostart = 1, поэтому он будет пытаться отлаживать каждый отдельный запрос), он должен попытаться установить соединение (и зарегистрировать этот факт).

LazyOne 10.01.2019 12:40

Можете ли вы добавить к своему вопросу содержание (если есть) /tmp/xdebug_remote.log?

common sense 10.01.2019 14:07

@Aamir Вы настроили ключ IDE внутри расширения Chrome Debug?

common sense 10.01.2019 14:13

Вероятно, в вашем composer.json есть следующее: "php": "5.6", измените его на "php": "7.2", и это изменит ваш уровень языка PHP.

lucid 10.01.2019 15:13
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
16
1 852
1

Ответы 1

Выберите «Удаленный веб-сервер» в окне «Проверка отладки веб-сервера» и выберите там сервер, который вы создали ранее, в соответствии с моим комментарием.

После того, как я выбрал «Удаленный веб-сервер» и проверил его, он показывает зеленые флажки в списке, но все еще не останавливается на точке останова.

Aamir 10.01.2019 09:52

1. замените снимок экрана зелеными галочками с удаленным веб-сервером в вашем вопросе; 2. обновите свой вопрос, указав способ запуска веб-страницы при отладке, происходит ли это с кнопкой отладки из PHPStorm? Параметр GET отладки передается браузеру, а затем веб-серверу?

Alexey 10.01.2019 10:08

Я добавил скриншот. При отладке кода я включаю значок отладки [расширение] в браузере Chrome, затем включаю запуск прослушивания в PHPSTORM, затем устанавливаю точки останова в методе контроллера домашней страницы, откуда загружается страница, а затем обновляю веб-страницу, чтобы проверить, останавливается ли она на точки останова. Это приложение Zend 3.

Aamir 10.01.2019 10:20

1. можете ли вы добавить конфигурацию отладки в PHPStorm (кнопка «Добавить конфигурацию» на 4-м снимке экрана) и указать «crud server» как «Сервер» / как «Начальный URL», выбрать любой браузер и дать ему какое-то имя (не независимо от того, как), а затем 2. нажмите кнопку «Отладка», которая находится второй справа от «Добавить конфигурацию», и посмотрите, останавливается ли она, затем

Alexey 10.01.2019 10:24

Кроме того, для тестирования поместите точку останова в первую строку index.php или в свою точку входа, а не в контроллер.

Alexey 10.01.2019 10:25

Добавлен crud server

Aamir 10.01.2019 10:40

В браузере отображается сообщение "Этот сайт недоступен" 127.0.0.1 отказано в подключении.

Aamir 10.01.2019 10:40

в конфигурации вашего сервера 'crud server' измените 127.0.0.1 с правильным именем хоста для вашего проекта - тем, которое вы тестируете в своем браузере

Alexey 10.01.2019 10:42

Теперь он показывает панель инструментов отладки, но не останавливается на точке останова в index.php.

Aamir 10.01.2019 10:45

я должен сначала запустить локальный php-сервер в терминале? "php -S 127.0.0.0:8080 -t crud / public / crud / public / index.php" Потому что в настоящее время я просто получаю доступ к проекту с localhost / crud / public

Aamir 10.01.2019 10:47

Неважно, как вы запускаете свой веб-сервер, главное, чтобы модуль PHP xdebug был загружен. У меня сложилось впечатление, что вы уже запускаете nginx или apache или что-то еще, поскольку в диалоговом окне сообщается, что он может подключиться к порту 9001. Я не знаю, что вы имеете в виду, когда говорите, что получаете доступ к своему проекту с "localhost / crud / public", но это URL-адрес, который вы вводите в свой браузер, путь должен быть настроен в конфигурации сервера "crud server" слишком. На данный момент у меня нет идей, я могу сказать, что ваша конфигурация сервера: хост, порт, путь должны отражать те, которые вы тестируете в своем браузере.

Alexey 10.01.2019 10:51

Хорошо, спасибо Алексею, я постараюсь найти способ с этим работать. Думаю, я пропустил некоторую настройку.

Aamir 10.01.2019 10:53

обязательно обновите свой вопрос решением и, возможно, руководством. Не заменяйте вопрос / скриншоты, просто добавьте раздел ОБНОВЛЕНИЕ и разместите там

Alexey 10.01.2019 10:54

В порядке. Я добавлю, как только найду решение

Aamir 10.01.2019 10:55

Другие вопросы по теме