< 返回 centos7 phpstorm断点调试问题
2018-04-04 17:34:11 评论: 0

  今天开机启动phpstorm,发现xdebug不能断点调试了,昨天下班啥都没动过,看了phpinfo()也没有问题,xdebug模块是开启的,phpstorm的设置完全没动过,一脸懵逼。于是想尽各种办法,最后终于解决了问题。

  首先看看php.ini里面关于xdebug的设置:

[Xdebug]
;zend_extension_ts =/usr/lib64/php/modules/xdebug.so
(根据php版本来决定使用zend_extension_ts还是zend_extension)
zend_extension =/usr/lib64/php/modules/xdebug.so
xdebug.auto_trace = on
xdebug.auto_profile = on
xdebug.collect_params = on
xdebug.collect_return = on
xdebug.profiler_enable = on
xdebug.trace_output_dir = "/tmp"
xdebug.profiler_output_dir = "/tmp"
xdebug.dump.GET = *
xdebug.dump.POST = *
xdebug.dump.COOKIE = *
xdebug.dump.SESSION = *
xdebug.var_display_max_data = 4056
xdebug.var_display_max_depth = 5
xdebug.remote_port=9001
xdebug.idekey = PHPSTORM
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

  然后是xdebug.ini的设置:

; Enable xdebug extension module
zend_extension=/usr/lib64/php/modules/xdebug.so
xdebug.remote_enable = 1
xdebug.idekey = PHPSTORM
xdebug.remote_port=9001

  仔细查找,发现都没有啥子问题,既然配置信息没有问题,那么只可能是IDE出现了问题,于是打开phpstorm的设置,一个一个排查,最终按照下面的设置搞定了:

  1. 进入File>Settings>PHP,设置本地PHP解释器,其实就是windows下的php.exe,linux下bin/php文件;
  1. 进入File>Settings>PHP>Servers,填写服务器端相关信息,Host指的是http服务器上配置的项目的访问域名,我本地nginx配置的是localhost,用的是默认的80端口;
  2. 进入File>Settings>PHP>Debug,找到XDebug选项卡,Debug port 填写的是上文中,php.ini配置文件当中xdebug.remote_port那一项的值;
  3. 进入File>Settings>PHP>Debug>DBGp Proxy,IED key填写的值是php.ini文件中xdebug.idekey的值,Host、Port是File>Settings>PHP>Servers中设定的Host、Port值;
  4. 点菜单栏的Run>Edit Configurations… 在弹出的窗口中添加一个调试配置:点击左上角加号,选择PHP Web Application;
  这样就可以使用了- -这种问题出现的真的很诡异,暂时还没找到导致这个问题出现的原因。

评论列表

请登录后评论! 登录