php.ini中

[XDebug]
zend_extension="D:\phpStudy\php\php-7.4.4-nts\ext\php_xdebug.dll"
xdebug.remote_enable = On
xdebug.remote_handler = dbgp   
xdebug.remote_host= localhost
xdebug.remote_port = 9000
xdebug.idekey = PHPSTORM

只需要添加上面这个就行,路径改为自己的

phpstorm中

  1. Debug port配置
    image-20200501111741988.png
  2. DBGP Proxy设置

这个主机和端口号,设置为项目的主机和端口,而不是xdebug的端口

其实,本地调试时,这个dbgp不用管也可以,这个主要是为了远程调试的

image-20200501105758143.png

  1. servers

这个主机和端口,也是配置为项目的主机和端口

image-20200501105844858.png

  1. 添加debug Configurations

image-20200501112202329.png

如果是laravel项目,index.php至少要指定到index.php,当然,后面也可以添加其他的路由地址

server选择刚才添加的

  1. 开始调试

    1. 先在要调试的代码前面打个断点
    2. 不需要开Strart listening for php debug那个监听电话按钮,因为,不是远程调试,所以,上面的bdgp也不用管

image-20200501112420880.png

  1. 直接点击红色的调试按钮就行,浏览器会自动打开到刚才配置的网址

image-20200501112602337.png

修改为域名的配置

image-20200501113033081.png

这种情况,无需浏览器安装插件,也不需要配置dbgp,也不需要phpstorm开启debug监听,只要保证debug配置中的端口和php.ini中的配置一样就行

使用浏览器插件xdebug helper

  1. 右键这个插件,点击选项,选择phpstorm,然后save
  2. 这个插件会自动在请求头的cookie中,添加一个cookie,值为
XDEBUG_SESSION=PHPSTORM;

image-20200501122204370.png

  1. 这种方式调试的话,phpstorm中,要开启监听按钮,也就是Strart listening for php debug

image-20200501122223310.png

  1. 这种调试方式就不需要在phpstorm中配置php web page
  2. 这种方式貌似也不需要配置DBGP proxy,奇怪,到底什么时候需要配置dbgp proxy????

使用postman

只要在headers中添加cookie,值是XDEBUG_SESSION就可以

image-20200501124227218.png

不管什么模式下,都不需要管DBGP PROXY

Last modification:July 9th, 2020 at 12:40 am
哎呀呀,大家随意,随意就好!