Раньше PhpStorm блестяще работал на моем компьютере. Нет расширений браузера. Я мог бы поставить точки останова где угодно, перейти на какой-либо URL в браузере, нажать Enter, и тогда я автоматически перешел бы на точку останова в данном файле. Файлы в проекте открывались автоматически, когда я проходил по коду.
Теперь это полный беспорядок.
Сначала приведу информацию о Xdebug в xdebug.ini (я не указываювсе, что связано с Xdebug в php.ini):
zend_extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
[xdebug]
xdebug.remote_enable=on
xdebug.default_enable=on
xdebug.remote_port=9000
xdebug.remote_host=localhost
Если я запускаю php -v
, я получаю
PHP 7.0.15 (cli) (built: Feb 13 2017 10:30:54) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.15, Copyright (c) 1999-2017, by Zend Technologies
with Xdebug v2.7.2, Copyright (c) 2002-2019, by Derick Rethans
iMac:xdebug-2.7.2 $
phpinfo()
показывает соответствующие значения, установленные на основе моего .ini.
В PhpStorm у меня PHP CLI установлен на 7.0, он показывает Xdebug 2.7.2.
Любопытно, что сообщение "Can't load xdebug", но php -v
не показывает то же сообщение. Сначала я определил zend_extension как в php.ini, так и в xdebug .ini и увидел это сообщение при выполнении php -v
, но после удаления из php.ini
сообщение ушло из php -v
.
У меня естьне знаю, нужно ли мне что-либо делать в настройках отладки в Build, Deployment, но вот что по умолчанию:
Также у меня естьмой проект настроен на синхронизацию с удаленным сервером, но для отладки я не хочу использовать сопоставления путей. Вот как у меня это было раньше, и сообщения PhpStorm об окончании сеанса отладки, а сопоставления путей не были найдены никогда.
Вот мой Run->Config
Раньше я не беспокоился о начальном URL. Независимо от того, какой URL я ввел в браузере, он вызывает отладку.
И вот что я пробовал в отношении сопоставления путей:
Я сделал это, чтобы посмотреть, исправит ли это что-то, но нет.
У меня такое ощущение, что это проблема с настройками Xdebug, мой прогон-> config или тот факт, что я использую виртуальный хост и где-то есть запись localhost, вызывающая проблему.
Так что я в растерянности. Если я выберу Listen for incoming...
и перейду к URL, фокус не перейдет к PhpStorm с текущей точкой останова. Я вижу в браузере, что все остановилось, и я захожу в PhpStorm и вижу, что отладка была запущена. Но когда я нажимаю «шаг за шагом» или «шаг в отладку», он просто заканчивается.
Что-то явно не так с тем, что я делаю?
Редактировать: Вот что я вижу в журнале xdebug:
[89603] W: Creating socket for 'dev.courses.com:9000', poll success, but error: Operation now in progress (19).
[89603] E: Could not connect to client. :-(
[89603] Log closed at 2019-10-21 10:42:37
[89603]
[89603] Log opened at 2019-10-21 10:42:37
[89603] I: Connecting to configured address/port: dev.courses.com:9000.
[89603] W: Creating socket for 'dev.courses.com:9000', poll success, but error: Operation now in progress (19).
[89603] E: Could not connect to client. :-(
[89603] Log closed at 2019-10-21 10:42:37
Не уверен, что специфика ошибки ... Может быть, это намекает на что-то? У меня вопрос, где в конфигурации я указываю localhost против моего псевдонима виртуального хоста? Может быть, это то, что все портит?