开发环境介绍
宿主机编辑器:PhpStorm 2019.1.3
宿主机:Windows (IP 192.168.55.1)
宿主机hosts文件:192.168.55.171 sy7.net
虚拟机:VirtualBox + CentOS7 (IP 192.168.55.171)
虚拟机中PHP安装路径:/application/php
虚拟机项目根目录:/wwwroot/sy7.net
虚拟机中Nginx服务器配置:
......
server_name sy7.net www.sy7.net;
root /wwwroot/sy7.net;
......
PHP的扩展Xdebug已经安装。
Xdebug下载:https://xdebug.org/files/xdebug-2.7.2.tgz
浏览器访问:
http://sy7.net/phpinfo.php
修改php.ini配置文件
vim /application/php/lib/php.ini
zend_extension=xdebug
;开启远程调试
xdebug.auto_trace=On
xdebug.remote_enable = 1
;客户机ip
xdebug.remote_host="192.168.55.171"
;客户机xdebug监听端口和调试协议
xdebug.remote_port=9001
xdebug.remote_handler=dbgp
;idekey 区分大小写
xdebug.idekey="PHPSTORM"
xdebug.remote_connect_back = 1
;xdebug.profiler_enable = off
;xdebug.profiler_enable_trigger = off
;xdebug.profiler_output_name = cachegrind.out.%t.%p
;idekey 区分大小写
xdebug.profiler_output_dir = "/tmp/xdebug.log"
保存php.ini文件后,重启php-fpm进程。
此处是
kill -USR2 `cat /application/php/var/run/php-fpm.pid`
项目说明
使用VirtualBox增强工具,虚拟机挂载 宿主机共享出的 文件夹。
mount -t vboxsf wwwroot /wwwroot
宿主机中的项目 D:/wwwroot/sy7.net
虚拟机中的项目 /wwwroot/sy7.net
PHPStorm配置
File->Settings->Languages & Frameworks->PHP窗口,如图。
PHP language levek 选择与虚拟机中对应的PHP版本,此处选择 7.3。
CLI Interpreter 选择最右边的…进行配置。如下图,选择弹窗左上角的+号,并选择第一项。
上图填写后,选择OK,回到如下图的界面。选择虚拟机中的PHP路径。
有如下图的弹窗,填入 Name。选择Additional下的Debugger extension最有侧的文件夹,选择xdebug.so文件在远程虚拟机中的路径。
看上图,Web Deployment->Deployment configuration 选择最右侧 … 进行配置。配置 Connection 、 Mappings。
Connection
Mappings
然后回到 CLI Interpreters 窗口。配置 General->PHP executable 、 Additional->Debugger extension。只需要点击右侧的 文件夹 图标,选中虚拟机中对应的文件即可。
File->Settings->Languages & Frameworks->PHP->Debug 窗口,如图。主要看红框中的部分。
- 选中Pre-configuration 序号1
Validate
,得到如下对话框。
- 选择上述的Depolyment server。点击
Validate
按钮。得到如下图。
- 下图无用。
File->Settings->Languages & Frameworks->PHP->Debug->DBGp Proxy窗口,如图。填入以下内容。
File->Settings->Languages & Frameworks->PHP->Servers窗口,如图。填入以下内容。
工具栏
Run->Edit Contigurations,得到如下弹窗,先点击左上角的+号,选择PHP Web Page,然后填入以下右侧的内容。注意Start URL先写网站入口文件。
重启PHPStorm。
项目文件
phpinfo.php
windows——D:\wwwroot\sy7.net\index.php
<br>
Linux————/wwwroot/sy7.net/index.php
<br>
<?php
$age = 0;
$sum = 0;
$name = 'zhangsan';
for ($i = 1; $i <= 100; $i++) {
$sum = $sum + $i;
}
echo $sum;
echo '<br>';
phpinfo();
?>
在PHPStorm中的截图,如下。选择右上角的sy7.net.xdebug。
设置断点。
点击代码窗口右上角的调试按钮。
此时,浏览器打开新标签页,访问http://sy7.net/phpinfo.php?XDEBUG_SESSION_START=12536
。
我们打开PHPStorm编辑器,得到如下图所示。
然后就可在Debugger窗口中进行调试,查看变量值得变化。如下图,即将运行第12行的代码。
在编辑器PHPStorm的Debugger窗口,调试结束后。看看浏览器的页面。其实这句话和下图,是废话。
PhpStudy+Xdebug调试超时500解决方法,请参考
https://www.javaidea.cn/topic/1274.html
END