首页  >  文章  >  开发工具  >  详解关于PHPSTROM的远程调试

详解关于PHPSTROM的远程调试

藏色散人
藏色散人转载
2021-03-23 16:31:533403浏览

下面由phpstorm教程栏目给大家介绍PHPSTROM远程调试,希望对需要的朋友有所帮助!

详解关于PHPSTROM的远程调试

安装 DVWA 项目

系统环境

whippet@ubuntu:~/Desktop$ cat /etc/issue

查看 PHP 环境是否已经安装

whippet@ubuntu:~/Desktop$ dpkg -l | grep php

添加 PPA 源

whippet@ubuntu:~/Desktop$ sudo add-apt-repository ppa:ondrej/php

更新系统

whippet@ubuntu:~/Desktop$ sudo apt-get update

安装 php 5.6

whippet@ubuntu:~/Desktop$ sudo apt-get install php5.6

安装 apache 并启动

whippet@ubuntu:~/Desktop$ sudo apt install apache2

安装 mysql 并启动

whippet@ubuntu:~/Desktop$ sudo apt-get install mysql-server

安装DVWA

whippet@ubuntu:~/Desktop$ cd /var/www/html/

图片

配置 PHPSTROM 调试

环境条件


机器名称 操作系统 ip 信息 实验环境
虚拟机 Ubuntu 20.04.2 192.168.176.171 PHP 5.6.40
本地机器 Windows10 192.168.176.1 phpstrom

xdebug 配置

我们直接在 xdebug 的官网上寻找历史版本^[1]^ 全局搜索 php 5.6

图片

我们可以看到相较于 windows 上种类繁多的二进制文件,linux 只提供了源码文件,需要自己进行编译,下载源码之后我们复制到虚拟机内部

whippet@ubuntu:~$ tar -xcvf  xdebug-2.5.5.tgz

图片

xdebug 被安装在 /usr/lib/php/20131226/

修改php.ini配置文件,在文件中追加以下内容

[Xdebug]

保存之后重启 apache 服务 sudo service apache2 restart   之后访问 phpinfo 发现xdebug 的信息已经显示出来了

至此 xdebug 的相关配置就 ok 啦,接下来我们对本地的 phpstrom 进行配置

PHPSTROM 配置

首先我们从虚拟机内,把已经安装好的项目代码打包再脱下来,这是因为,有一些项目在安装之后会对源代码进行一定的修改,为了不出现偏差我们就把安装好的代码给拖取下来。利用 PHPSTROM 打开这个项目,并配置相关参数信息

File -> Settings ->  Languages & Frameworks -> PHP -> Debug

图片

图片

配置 Servers

图片

此处要注意,需要直接指定到网站的目录位置

配置PHP Web Application

图片

然后我们打开登录的 login.php ,在其中添加断点,并设置 PHPSTROM 的监听模块

图片

浏览网站页面,同时打开浏览器的调试插件

图片

我们可以看到已经跳到我们断点的位置图片

至此调试的基本过程已经完成,以下的步骤属于可做可不做,本着学习的想法,我还是把添加上吧

SSH 配置

先大致描写一下为什么要进行这个操作,就是为了方便对 php 文件的修改,有时候我们想对 php 文件进行修改,但是在本地修改之后,并不会影响远端服务器上的文件,经过这样的配置之后,本地文件修改之后,远端服务器上的文件也会同步修改。

首先,我们安装好的 Ubuntu 虚拟机上是并不存在 SSH 的,所以我们需要先将 Ubuntu 上的 SSH 进行配置。

# 安装 openssh 服务

验证一下,发现可以登录成功

打开 PHPSTROM

添加一个 sftp 协议

图片图片图片

选择 ubuntu 上 php 的路径位置

9a3cab875d31095059f946639aca7f6.png

至此已经基本配置完成,我们来进行一下验证
File -> Settings -> Languages & Frameworks -> PHP -> Debug

图片

配置完成,我们修改一个文件进行验证一下

图片

图片

以上是详解关于PHPSTROM的远程调试的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:learnku.com。如有侵权,请联系admin@php.cn删除