专栏首页idealclover的填坑日常XAMPP+PhpStorm+Xdebug调试本地网页

XAMPP+PhpStorm+Xdebug调试本地网页

因为要折腾自己的Wordpress博客,所以不得已入坑了世界上最好的语言qwq第一步就是所说的配置本地的调试环境啦~总不能一上来就在服务器上写吧orz

经过一番资料的考察最终选择了XAMPP+PhpStorm+Xdebug的解决方案,也在这里把自己的过程记录一下~

XAMPP配置

XAMPP是一个把Apache网页服务器与PHP,Perl以及MariaDB集合在一起的安装包。通过这个安装包,我们可以轻易在自己的电脑上建立网页服务器,调试自己的网页。

XAMPP的安装比较简单,官网在https://www.apachefriends.org/zh_cn/index.html ,下载时候按照提示一直安装就好了。

安装后打开XAMPP Control Panel,界面如图

按照自己的需要选择服务start就好了,比如Wordpress需要的Apache和MySQL。

有可能出现其他程序比如VM workstation占用端口的情况,去进程里做掉就可以打开了。

要注意的是端口需要手动停止,单纯关闭XAMPP是不解决问题的。

另外旁边的Explorer打开后其中的htdocs是网站的根目录,phpMyAdmin是phpMyAdmin的根目录。

PhpStorm安装

PhpStorm是由jetbrains所研发的Php IDE,下载安装也相对简单容易,官网https://www.jetbrains.com/phpstorm/

破解的话分享一个网站 http://idea.lanyus.com/ 2017.10.29win版PhpStorm亲测有效,大家可以试试。如果挂了的话也麻烦告知一下。

Xdebug安装

网上的说法是XAMPP是内置Xdebug的,其目录在打开Explorer的phpext中,文件名是php_xdebug开头的.dll文件,然而也许是自己的php版本是7.1的缘故,并没有发现这个文件。于是需要去官网下载。官网https://xdebug.org/ ,需要按照自己对应的版本进行下载否则会报错。

下载完成之后将文件放到phpext下,并修改phpphp.ini文件,在其最后添加如此代码.

[xdebug]
xdebug.remote_enable = On
xdebug.remote_handler = dbgp
xdebug.remote_host= localhost
xdebug.remote_port = 9000
xdebug.idekey = PHPSTORM
zend_extension="上面安装的文件(比如D:ProgramXAMPPphpextphp_xdebug-2.5.5-7.1-vc14.dll)"

其中xdebug_remote_port的默认值9000有可能与其他应用发生冲突,建议修改为9002等值,相应的之后的端口值也需要作出修改。

PhpStorm的设置

PhpStorm的内置服务器存在bug,所以需要手动的配置

先是对PHP的环境进行设置,设置位置在FILE-Default Settings-Languages & Frameworks中,PHP的选项中CLI Interpereter定位到上面提到的目录下的php.exe文件,系统会自动匹配其版本。

注意为了一劳永逸,没有设置settings而是直接设置了default settings,否则就会出现之前自己的悲剧→明明以为自己设置好了最后发现是环境又重置了。

接下来设置PHP设置下面的子设置Debug,其中Xdebug一项要的Debug port要改为刚才自定义的端口值(如9002),如果是默认则不必做出修改。

之后需要设置DBGp代理,在刚才的Debug选项下的DBGp Proxy中,IDKEY,端口值均与之前的设置保持一致(如PHPSTORM, 9002),由于是在本地所以Host值是http://localhost/

接下来需要设置项目的configurations,关注右上角的edit configurations,根据自己是调试网页还是调试项目选择PHP remote debug还是PHP Web Application。并进行具体的设置

之后需要在浏览器(如谷歌,火狐)上安装xdebug helper插件,安装后右击并选择选项,进入配置界面将IDEKEY改为PHPSTORM

运行调试

浏览器开启xdebug helper,图标会变成绿色的状态。这时点开phpstorm右上角电话样式的监听按钮,,访问网页的时候就会在设置的断点处停留,而打开DEBUG则可以看到更多的调试参数,至此xdebug也就设置完成了。

版权声明

本作品由idealclover采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可,转载请注明出处。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • VS2017无法为MFC中的对话框创建类 解决办法

    在对话框模板上添加类是报错:SimpleScripts1033default.js下找不到default.js或.vbs

    idealclover
  • 如何使用github给大佬递茶

    最近也是闲到没事干(误),开始给开源项目打小黑工贡献代码,当个dalao手底下的端茶党。但是看来端茶党也不是那么容易做的或许只是傻翠他智商太低跟不上,在打小黑工...

    idealclover
  • 从零开始折腾博客(5):全站从http升级到https

    HTTPS=HTTP+SSL,简单讲是HTTP的安全版,即HTTP下加入SSL层。相比HTTP,HTTPS提供了内容加密,身份认证,数据完整性的功能,可以有效地...

    idealclover
  • win7下安装eyed3教程

    eyeD3 是一个 Python 程序和模块,提供了读写 ID3 标签(v1.x 和 v2.3/v2.4)的功能。同时可检测 MP3 文件的头信息,包括比特率、...

    py3study
  • 挂载银行前置机Ukey到windows server2012虚拟机的操作记录

    公司有跟银行对接的金融业务,需要配置银行前置机环境。通过KVM的WebVirtMgr管理平台创建windows server2008虚拟机,安装参考:kvm虚拟...

    洗尽了浮华
  • CoreOS为容器安全带来不同方法

    容器安全对于CoreOS的第一个container runtime rkt的产品发布是至关重要的。这被认为比Docker更适合大规模部署。 随着安全为中心的rk...

    静一
  • 使用jquery插件报错:$.browser is undefined的解决方法

    刚开始以为是插件有错误,就到官方网站去下载一个最新版的Jcrop插件,结果在原项目的网页打开就是正常的,而引入项目就会报错,我发现可能与 jquery的插件版本...

    王念博客
  • 如何在Python里用ggplot2绘图

    为了严格实现图形语法,ggplot2提供了一种非常直观和一致的方式来绘制数据。ggplot2的绘图方法不仅确保每个绘图包含特定的基本元素,而且在很大程度上简化了...

    AiTechYun
  • [PHP] 深入理解PHP内核:变量及数据类型

    1、现实生活中我们会找一个小箱子来存放物品,一来显得不那么凌乱,二来方便以后找到。计算机也是这个道理,我们需要先在内存中找一块区域,规定用它来存放数据,并起一个...

    陶士涵
  • 手把手教你全家桶之React(一)

    用户2145235

扫码关注云+社区

领取腾讯云代金券