PhpStorm8 + Vagrant +XDebug 配置

 vagrant默认已经安装好xdebug,可经过phpinfo()来确认。php

下面是配置的步骤:git


Xdebug 与 PhpStorm 如何与 vagrant 进行沟通?shell

xdebug 与 phpstorm 之间的通讯是client-server模式。其中 xdebug 是 client, 他须要访问 phpstorm。而 vagrant 就是他们之间沟通的桥梁。浏览器


配置xdebug服务器

首先经过命令行链接上vagrantapp

vagrant ssh

再输入命令ssh

netstat -r

记住Gateway那一项的IP,一般是:
phpstorm

10.0.2.2

打开xdebug配置文件ide

cd /etc/php5/mods-available
vi xdebug.ini

将该文件内容改成:工具

zend_extension=/usr/lib/php5/20131226/xdebug.so
xdebug.idekey="debugit"  
xdebug.remote_host=10.0.2.2  
xdebug.remote_port=10000  
xdebug.remote_enable=1  
xdebug.remote_autostart=0  
xdebug.remote_handler="dbgp"


配置phpstorm,让他可以接受来自xdebug的请求

ctrl+alt+s 打开phpstorm 配置窗口,进入 Languages & Frameworks -> PHP -> Debug页面,将xdebug的端口设为10000,并确认勾选 can accept external connection项。点击apply保存。

对于phpstorm,vagrant至关于一个远程服务器,因此须要为phpstorm添加这个服务器以便通讯。进入 Languages & Frameworks -> PHP -> server页面,填写你的 vagrant 服务器信息,重要的是将你的本地代码与虚拟机代码映射起来(只须要映射 项目根目录 与 站点根目录)

添加一个php解释器,进入 Languages & Frameworks -> PHP 页面

写博客时我已经导入完成了,正常状况下,第一次设置须要手动导入vagrant自带的php解释器。点击Interpreter右侧的[...]按钮,弹出如下窗口:

点击+新建一个解释器,Remote选择Vagrant,Remote目录就是你键入vagrant ssh的目录,接下来填写可执行php文件的目录,若是填写正确,点击右侧蓝色同步按钮后,就会自动识别出解释器的版本信息。


建立一个phpstorm debug 配置

在IDE的工具栏点击Run->Edit Configurations

点击+建立一个PHP Web Application,为他起一个名字,并将Server设置为以前建立的Vagrant,点击apply保存。

点击 Run->start listening for php debug connections:

最后,在vagrant本地目录下重启虚拟机:

vagrant reload

在IDE设置好断点,并点击 Run->Debug 'Vagrant'就能够进行调试了。

此时能够清楚地看到栈信息,因为代码在断点处中止执行,浏览器报 504 Timeout。

以上,phpstorm8 + vagrant + xdebug 的配置完毕。

相关文章
相关标签/搜索