配置环境
chrome
phpstudy 8.0.9.3
- 此法只适合文件在网站根目录,因此需要自己配置添加网站,将要调试的项目放在此目录
- php 7.3.4
phpstorm2019
浏览器chrome配置
下载 Xdebug-helper
phpstudy
在此版本phpstudy中,只有php7.3.4中有php_xdebug扩展.开启此扩展。
找到对应php.ini文件。
重要:搜索文件找到开启的extension项:
extension:php_xdebug
用;
注释掉。因为phpstudy开启这个扩展,但需要的是zend_extension
以下内容添加到php.ini尾部
1
zend_extension=xdebug
2
[XDebug]
3
;调试功能模块儿
4
;extension=php_xdebug.dll
5
;下面是php_xdebug在phpstudy中的位置,根据情况修改,重要!!!!
6
zend_extension = "D:\phpstudy\Extensions\php\php7.3.4nts\ext\php_xdebug.dll"
7
xdebug.remote_handler=dbgp
8
xdebug.idekey= "PHPSTORM"
9
;开启远程调试
10
xdebug.remote_enable = On
11
;远程主机
12
xdebug.remote_host=localhost
13
;主机端口,重要!!!!
14
xdebug.remote_port=9001
15
;开启自动跟踪
16
xdebug.auto_trace = On
17
;开启异常跟踪
18
xdebug.show_exception_trace = On
19
;开启远程调试自动启动
20
xdebug.remote_autostart = On
21
;收集变量
22
xdebug.collect_vars = On
23
;收集返回值
24
xdebug.collect_return = On
25
;收集参数
26
xdebug.collect_params = On
27
;临时跟踪信息输出,按需修改
28
;xdebug.trace_output_dir="D:\phpstudy\Extensions\php\php7.3.4nts\tmp"
29
;显示局部变量
30
xdebug.show_local_vars = On
31
xdebug.profiler_enable = On
32
;xdebug.profiler_output_dir ="D:\phpstudy\Extensions\php\php7.3.4nts\tmp"
33
xdebug.trace_enable_trigger =On
重启apache服务
phpstorm配置
注意
每步配置完成后需点击右下角:Apply
!!!
php解释器配置
File->Setting->Language&Frameworks->PHP
php版本7.3.4。其他的正常配置解释器即可。
debug配置
File->Setting->Language&Frameworks->PHP->Debug
此步只需更改X-debug port
为9001,即第二步在php.ini中配置项为xdebug.remote_port
的值
DBGp Proxy配置
File->SFetting->Language&Frameworks->PHP->Debug->DBGp Proxy
1 | IDE key:PHPSTORM |
2 | //第二步在php.ini中配置项为xdebug.idekey的值 |
3 | HOST:http://test.com |
4 | //为要调试的项目配置的网站。 |
5 | //不要用类似于http://localhost/test/test.php |
6 | Port:80 |
7 | //服务器的监听地址 |
File->SFetting->Language&Frameworks->PHP->Server
- 点加号添加,Name随便,下面要用。
- Host填调试项目网站。eg:http://test.com
- Port:80
- Debugger:Xdebug
最终调试前配置
Run->Edit Configurations
- 点击
+
- 选择Php Web Page
- Name随便
- Server选择上一步添加Server的Name
- Start URL: http://test.com
- Browser: Chrome
配置完毕
食用
浏览器的Xdebuger helper
选择Debug
phpstorm点击右上角电话图标开始监听
phpstorm点击右上角甲壳虫图标开始调试
注意不能浏览器直接访问,要点击甲壳虫图标
如果浏览器访问时,url参数含有XDEBUG_SESSION_START=XXXXX
参数,cookie中有 XDEBUG_SESSION =PHPSTORM
则成功
后续调试超时问题
调试时,还没调试几十秒钟就超时了。设置一下。
找到httpd.conf
查找 LoadModule fcgid_module modules/mod_fcgid.so
模块,保证不被注释
在末尾添加以下配置
1 | <IfModule fcgid_module> |
2 | FcgidProcessLifeTime 8200 |
3 | FcgidIOTimeout 8200 |
4 | FcgidConnectTimeout 4000 |
5 | </IfModule> |