zoukankan      html  css  js  c++  java
  • 在主机中通过xdebug远程调试Vagrant虚拟机中drush脚本的方法

    改方法是调试drush所执行的php代码的方法,同样适用于普通的cli方式运行的php程序的调试。

    1、首先需要调整cli方式的xdebug.ini配置:

    sudo vi /etc/php5/cli/conf.d/xdebug.ini

    [XDebug]
    zend_extension="/usr/lib/php5/modules/xdebug.so"
    
    xdebug.coverage_enable=0
    xdebug.default_enable=0
    
    xdebug.remote_enable=1
    xdebug.remote_connect_back=0
    xdebug.remote_host=192.168.xxx.xxx
    xdebug.remote_port=9000
    xdebug.remote_handler=dbgp
    xdebug.remote_log=/tmp/xdebug.log
    xdebug.remote_autostart=false
    
    xdebug.idekey="PHPSTORM"
    
    xdebug.max_nesting_level=256
    

    其中的

    xdebug.remote_host=192.168.xxx.xxx
    需要改成你主机的IP地址

    2、创建一个名为drush_debug.sh的脚本文件,其中设置cli调试需要的变量,为了方便,drush_debug.sh直接放在drupal项目的根目录下面,然后把下面的内容拷贝的drush_debug.sh,并保存。

    #!/bin/bash
    export XDEBUG_CONFIG="idekey=PHPSTORM" &&  
    export PHP_IDE_CONFIG="serverName=drupalvm.dev" &&
    drush "$@"

    保存完成之后,使用chmod命令修改drush_debug.sh,使它具有执行权限。

    3、配置phpstorm

    关于上图的说明:

    1). 要保证server的name和第二步的serverName一致

    2). 勾选 use path mapping,设置Absolute path on the server为Vagrant虚拟机drupal项目所在的目录。

    4、运行drush命令

    进入drupal所在的目录,用drush_debug.sh代替原来的drush就可以进行调试了,记得在你需要的地方设置好断点。

    5、如果是普通的cli调试,把第2步的

    drush "$@"
    改成
    php "$@"
    就可以了

    因为非常简单,就不再做详细的说明。

    6、关于windows下面Vagrant文件同步的说明:

    Vagrantfile中的config.vm.synced_folder的本地路径可以采用相对于Vagrantfile所在文件的路径;并且,并不需要安装ntfs的插件来支持,同步的type直接写nfs即可。

  • 相关阅读:
    .net core相关博客
    通过几个Hello World感受.NET Core全新的开发体验
    ASP.NET Core 介绍
    ASP.NET MVC4企业级实战目录
    ASP.NET MVC4入门到精通系列目录汇总
    HTTP详解
    壮哉大微软,.Net人的春天来了,你准备好了嘛!
    简析 .NET Core 构成体系
    .Net Core[译文]
    OI再见
  • 原文地址:https://www.cnblogs.com/merryfreespace/p/5008995.html
Copyright © 2011-2022 走看看