vagrant安装php环境,如何在PHPStorm和Vagrant环境下安装Xdebug

如今,我们常使用vagrant虚拟环境与其提供的灵活性进行开发。不管你在什么平台上,你都不必再配置繁琐的开发环境,仅仅使用vagrant就可以配置一模一样的环境提供给你的同事、学生使用。

但是我们在虚拟环境中开发,使用Xdebug就有点麻烦了,因为在默认情况下,它只针对本地的主机提供服务。

Xdebug是一个PHP的扩展,它可以允许PHP开发者调试与分析代码,追踪错误。如果你不熟悉它,可以在看本篇文章之前,参考一些Xdebug的相关教程。

在这篇文章,我将教你如何在PHPStorm和Vagrant虚拟环境下配置Xdebug。

准备工作

准备一个vagrant虚拟环境,安装和启动Homestead(Laravel集成包),当你进入到Laravel的欢迎界面,代表准备工作已经完成了。

安装Xdebug

如果你在使用Homestead和一些其他内置Xdebug的LNMP一键安装包的话,可以跳过这一步。你也可以使用phpinfo()函数查看Xdebug的安装情况。

e67cdd1058af03f168ae982b7cd2414c.png

或者通过查看PHP-FPM和PHP CLI的conf.d目录:

ls /etc/php5/fpm/conf.d

ls /etc/php5/cli/conf.d

754dbfd38fd23fbb3c40a79f9f3b8c6a.png

如果你看到了xdebug.ini的相关配置项,则代表它已经加载成功了。如果你使用了不带xdebug的集成包,可以去搜索引擎查看如何安装xdebug的教程。

配置xdebug.ini

为了允许xdebug的远程特性,我们需要修改它的配置文件,并且加上几条配置语句。Homestead的xdebug.ini默认位置在/etc/php5/mods-available,找到以下语句:

zend_extension=xdebug.so

在这条语句下面,添加:

xdebug.remote_enable = on

xdebug.remote_connect_back = on

xdebug.idekey = "vagrant"

保存配置文件,重启Homestead或者PHP-FPM(sudo service php5-fpm restart),这就是配置xdebug的全部过程了。

配置PHPStorm—服务器

PHPStorm也同样需要一些配置,首先我们在PHPStorm中打开Laravel项目目录:

4e9971ed7079fd98f06794724af102b2.png

然后,打开PHPStorm配置项,依次进入PHP->Servers,添加一个新服务器。给新主机起个名字并给它8000端口。在host的下面,把你项目的站点域名(本地)填上去(Homestead默认是homestead.app)。然后,做路径地图映射,这样就可以让PHPStorm定位虚拟环境中的目录。基本上,可以按照下面这张动图配置:

68ba42e05ee4f704fa07fd5640b956e8.gif

配置PHPStorm—进行Debug的配置

要在项目中运行debugger,我们需要创建一个debug环境。打开Run->Edit Configurations。在这里,创建一条「PHP Web Application 」的新配置项:

0d3c27d53731afb18958ca1fe3c4f07d.png

应用新的配置,并关闭此配置窗口。

测试一下

以上便是所有的配置过程了,下面我们来测试一下Xdebug是否可以正确的工作。

首先我们在Laravel项目的路由(app/routes.php)中添加:

Route::get('/', function()

{

$a = [1, 2, 3, 4, 5];

array_pop($a);

return View::make('hello');

});

然后,在路由的代码中添加几个断点:

ea80647ee90a7738cc308f883088eb5b.png

然后打开Run->Debug,选中你刚才添加的配置项,这时会在浏览器中弹出你的项目地址,如果项目被正确打开了,PHPStorm将会弹出debug的选项卡,里面记录的程序的运行流程和错误追踪。

418c93b5c16ae1e69cade82f2685a09b.png

总结

Xdebug本身十分容易使用,只是遇上vagrant和PHPStorm的时候配置起来会有些繁琐,基本上分为以下几步:首先在vagrant环境中安装xdebug,在xdebug.ini中加上允许远程工作的语句。然后在PHPStorm的配置中正确配置debug服务器和目录映射就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值