PHP调试环境无法正常工作

时间:2016-03-28 20:58:01

标签: php centos xdebug

我在尾巴的尽头,可以真正使用一些帮助!

这是我的设置 -

  • NGINX,CentOS上的PHP-FPM
  • Nginx conf文件包含以下内容:

    location ~ .php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }

  • /etc/php-fpm.d/www.conf上的PHP-FPM conf文件包含以下内容 listen=127.0.0.1:9000

通过上述配置,NGINX可以正确显示PHP页面。

现在,我想设置Xdebug。所以我将以下内容添加到/etc/php.d/xdebug.ini文件

<code>
zend_extension=/usr/lib64/php/modules/xdebug.so
xdebug.remote_enable=1
xdebug.remote_host=x.x.x.x
xdebug.remote_port=9009
xdebug.remote_autostart=1
</code>

注意远程端口设置为9009,与PHP-FPM端口9000不冲突。

在x.x.x.x计算机上,我正在运行XDebugClient侦听端口9009上的传入连接。

接下来,我从主机x.x.x.x启动浏览器,并请求URL http://y.y.y.y?XDEBUG_SESSION_START=1(其中y.y.y.y)是具有NGINX,PHP-FPM和XDebug设置的服务器。

问题 - 没有任何反应。 XDebugClient永远不会得到连接!

我错过了什么?

1 个答案:

答案 0 :(得分:0)

要检查的事项

  • 拉起phpinfo()页面以确保正确配置了php.ini文件。如果您没有看到长xdebug部分,则问题出在您的配置中。
  • 尝试使用xdebug运行traceprofile。如果它们有效,那么xdebug模块本身就没问题。
  • 尝试在php.ini文件中设置xdebug.remote_connect_back = 1。这将覆盖remote_host设置,如果问题与网络配置有关,则可能会有所帮助。
  • 确保您的IDE设置为侦听端口9009上的连接。例如,在PHPStorm中,您必须配置IDE以侦听自定义端口,然后您必须按下按钮才能激活调试工具您加载正在调试的页面。

这些是我必须经历了几次的基本步骤。希望他们中的一个会有所帮助。