Vscode下调试基于Homestead环境的Laravel框架
PS:最近在学Laravel框架,本机IDE是Vscode,因为Vscode是真的好用!今天突然想调试php代码了,于是疯狂地在网上查资料,经过一上午的不懈努力,终于成功了!
准备工作
首先环境要保证安装对了,如Homestead,还有virtual box ,vagrant之类的。相信你已经安装了完成了基本的开发环境。
1.接下来安装PHP debug,在VS Code扩展应用里安装该扩展:

2.然后登陆到Homestead上:$vagrant up
$vagrant ssh
3.在Homestead上启用Xdebug(因为Homestead默认是安装了Xdebug的,所以不用安装了)
$ xon
4.然后找到访客的网关IP,$ netstat -rn | grep "^0.0.0.0 " | cut -d " " -f10
我的输出是:10.0.2.2。记录下来,后面会用到。
5.找到xdebug.ini的路径: $php --ini | grep 'xdebug'
我的输出是/etc/php/7.1/cli/conf.d/20-xdebug.ini ,记录下来,后面会用到。
6.编辑xdebug.ini(sudo vim /etc/php/7.1/cli/conf.d/20-xdebug.ini)
删除里面原有的所有配置,加入下面的代码(远程主机的那项填的是你自己上面输出的结果哟):
zend_extension=xdebug.so
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_host=10.0.2.2
7.重新启动PHP-FPM服务:$ sudo service php7.1-fpm restart
8.修改VsCode里,PHP下的launch.json文件,配置新的项(Listen for XDebug on Homestead)用于调试(加入路径的映射):
9.测试,给E:/Code下的一个文件,加上断点,然后选中调试选项Listen for XDebug on Homestead,开始调试,
进入项目的网站,并使之运行到断点处,观察调试结果如下:

可以看到,左边监听栏输出了相应的异常结果,大功告成,接下来,就可以轻松地分析出错误的原因了,ok~。
注意:如果不能成功调试,请返回第8步,仔细检查你项目的路径,然后填上相应的路径映射。
Vscode下调试基于Homestead环境的Laravel框架的更多相关文章
- 再整理:Visual Studio Code(vscode)下的基于C++的OpenCV的最新搭建攻略解析
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/czlhxm/p/13848278.ht ...
- yolov3源码darknet在vscode下调试
1. 安装配置: https://pjreddie.com/darknet/yolo/ darknet文件夹下make命令搞定: 2. 配置vscode 打开安装好的vscode并安装扩展C/C++( ...
- vscode下调试caffe源码
caffe目录: ├── build -> .build_release // make生成目录,生成各种可执行bin文件,直接调用入口: ├── cmake ├── CMakeLists.tx ...
- VSCode下调试mocha测试用例
之前使用tape做Node.js的单元测试,最方便一条就是使用它就和自己写个控制台应用程序测试一样,控制起来比较灵活,直接用VSCode进行调试也比较方便.然而tape输出中文字符总是乱码,想了很多办 ...
- NodeJS学习日记--VSCode下调试
在vscode中打开项目文件夹 点击左侧的调试菜单,在打开的页面中点击下拉框并点击添加配置 在弹出框中选择 node.js vscode 会自动在项目文件夹下添加.vscode文件夹,并创建launc ...
- 2019 Mac下安装运行Homestead环境
为了能提高自己的价值,还是要坚持学习新东西才行.这不,从多学会一个PHP开发框架开始.在开始使用Laravel之前,很多"经验"告诉我要先安装Homestead,至于好处,大家可以 ...
- QT下调试基于ros的catkin项目
1.首先告诉qt ros的搜索路径,通过修改qt creator 桌面启动程序来实现 sudo gedit ~/.local/share/applications/DigiaQtOpenSour ...
- php开发环境搭建——laravel框架,apache服务器,git版本控制
本文主要阐述做项目前的开发环境安装——后端为php,前端采用grunt进行自动化构建.具体介绍了windows平台下采用apache运行php的环境搭建,以及git工具安装.写得有点粗糙,但过程完整, ...
- docker中lnmp环境部署laravel框架
yum install docker 安装docker service docker start 启动docker docker pull docker.io/skiychan/ngin ...
随机推荐
- Zend Studio配置Xdebug
按照网上的教程一直没有配置好,上官网看到一句话, If you don't know which one you need, please refer to the custom installati ...
- python 变量作用域 v.__sizeof__() python 深复制 一切皆对象 尽量减少内存消耗
python 深入理解 赋值.引用.拷贝.作用域 - 江召伟 - 博客园 https://www.cnblogs.com/jiangzhaowei/p/5740913.html a=[1,2,5]b= ...
- vijos - P1077克隆龙 (找规律 + 指数型母函数 + python)
P1077克隆龙 Accepted 标签:[显示标签] 描写叙述 如今龙的克隆已成为可能,龙基因由ACTG字母组成,而龙的基因有例如以下特点: 1.A在基因中的出现为偶数次(包含0): 2.C的情况也 ...
- java中间变量缓存机制
public class Demo { public static void main(String[] args){ method_1(); method_2(); } private static ...
- 关于hive
这两天在研究了hbase,hadoop,hive,spark 由于spark.py不支持clust(jar才支持,但是太麻烦了>_<) 所以最终决定使用hive 在hive中用create ...
- leetcode 690. Employee Importance——本质上就是tree的DFS和BFS
You are given a data structure of employee information, which includes the employee's unique id, his ...
- hive时间
Hive中日期函数总结:1.时间戳函数日期转时间戳:从1970-01-01 00:00:00 UTC到指定时间的秒数select unix_timestamp(); --获得当前时区的UNIX时间戳s ...
- PCB Genesis加邮票孔(弧与弧)实现算法
一.Genesis加邮票孔(弧与弧)实现算法 1.鼠标点击位置P点(可以确认搜索区域位置,确认点击位置周边元素分区,此所讲算法未应用到P点坐标) 2.求出:P1C与P2C (线与弧最近点距离的2个点) ...
- js的多种数值分类相加,数据先后没有顺序,不确定同类数据多少
下面是js源码片段.看的是思想. <script type="text/javascript"> deg_countMyChart = function(deptcod ...
- bzoj 1029: [JSOI2007]建筑抢修【贪心+堆】
第一想法是按照结束时间贪心,但是这样有反例 所以先按照t贪心,能选则选,把选的楼的持续时间放进大根堆里,当当前的楼不能选的时候如果当前的持续时间比大根堆里最大的要小,就用这个替换最大,这样总数不变但是 ...