如何在远程服务器上使用Xdebug仅触发我的请求

时间:2019-02-03 19:07:42

标签: phpstorm xdebug remote-debugging

我正在尝试调试远程服务器上的代码。

我正在使用

  • Ubuntu 16服务器,LEMP,PHP 7.0作为远程服务器
  • OSX,PhpStorm,Chrome Xdebug帮助程序作为本地环境

所以,什么时候

  • Xdebug连接由

    建立
    ssh -R 9000:localhost:9000 {username}@{serverhost}
    
  • 处于调试模式的Xdebug助手

  • PhpStorm开始监听已启用

Xdebug不仅触发我的浏览器或PhpStorm的每个请求,还触发来自互联网上所有其他用户的请求。

正常吗?

是否只能查看从PhpStorm或Chrome请求发起的请求?如果是,那么如何设置?

1 个答案:

答案 0 :(得分:2)

  

Xdebug不仅触发我的浏览器或PhpStorm的每个请求,还触发来自互联网上所有其他用户的请求。

     

这正常吗?

这取决于您的Xdebug配置。现在看来,它已配置为自动尝试调试每个单个请求(在许多情况下不是一个好主意)。

  

是否只能查看从PhpStorm或Chrome请求发起的请求?如果是,那么如何设置?

是的,确保关闭xdebug.remote_autostart(设置为0 / no)。

然后只需遵循官方指南:https://www.jetbrains.com/help/phpstorm/debugging-with-phpstorm-ultimate-guide.html

Xdebug将看到由Chrome Xdebug Helper(或GET / POST参数,如果您在URL /请求中手动传递它)设置的Xdebug cookie,并将尝试仅调试那些请求。

P.S。在其他情况下,上述选项也无济于事。.但到目前为止,您似乎还没有遇到这种情况(需要查看更多详细信息)。