zend_extension=/usr/lib/php/20190902/xdebug.so
xdebug.mode=debug
xdebug.log=/var/log/xdebug.log
我已将权限 777 设置为 xdebug.log 文件
我跑
php7.4 index.php
PhpStorm 监听已打开。
从命令行运行时,代码不会在断点处停止,所以我可能需要检查日志以获取信息。
这是配置,可以在 docker 中正确使用nginx + php-fpm,xdebug3,使用Chrome/Firefox 扩展激活。
[Xdebug]
xdebug.mode=debug
xdebug.client_host=host.docker.internal
xdebug.client_port=9003
xdebug.idekey=PHPSTORM
xdebug.log=/var/log/xdebug.log
有关xdebug.mode和xdebug.start_with_request参数的配置组合的更多详细信息,您可以在此处找到。另外,使用 nginx Web 服务器时,如果
$_SERVER["SERVER_NAME"]
不是由 PHP 提供的。为了解决这个问题,在 nginx 配置中添加一个fastcgi参数(例如/etc/nginx/conf.d/symfony.conf):
fastcgi_param SERVER_NAME $server_name;
或者
fastcgi_param SERVER_NAME $host;
根据@LazyOne 评论,尝试了这种方式并且它有效 - 在断点处停止并记录日志文件:
php7.4 -d xdebug.start_with_request=yes index.php