Installation notes

0. Install the best Firefox add-on for remote debugging The easiest Xdebug. I'm not lying.

1. Install the xdebug extension from PECL or from a repo or download sources to compile it manually:

2. Compile the extension

  • cd /xdebug/src/path
  • /path/to/your/phpize
  • ./configure --prefix=/php/installation/prefix --enable-xdebug --with-php-config=/path/to/your/php-config
  • make -j4
  • sudo make install

4. Configure Xdebug in your php.ini

  • zend_extension="/path/to/installed/extension/xdebug.so"
  • xdebug.remote_enable=true
  • xdebug.remote_host=127.0.0.1
  • xdebug.remote_port=10000 (port 9000 is occupied by FPM, but you can set another)
  • xdebug.remote_autostart=1
  • xdebug.idekey= (you can just leave it empty)

3. Make sure Xdebug was installed successfully

  • /path/to/your/php -i | grep xdebug

4. Don't forget to configure your fastcgi-server if you use one (example of nginx server config):

  • fastcgi_param PHP_IDE_CONFIG serverName=$server_name;

5. Don't forget to reload your web-server or php-fpm.

IDE configuration

  • Configure your xdebug port (10000 is our case)
  • Filter external connections if you don't want to accept debug requests from aside
  • Add server configuration of your site
  • Go to Run->Edit configurations. Add "PHP Remote Debug"
    configuration, select your server (that you just added) and enter
    IDE-key, a string that will filter debug data by debug-session name:

Action!

  • Select Run->Debug... and select your remote configuration name (as you named it above):

    IDE now listens incoming connections on port 10000. (Hey, article writers, do you fucking know that IDE is a server here? Yes, xdebug sends data directly to IDE)
  • Confgure your addon in Firefox. Go to
    Tools->Addons->Extensions->The easiest Xdebug and change your
    IDE-key to selected one.
  • Open the site page that you want to debug and click the "bug" icon on your Addon Bar. It will become colorized and animated.
    This means that session name is set and after page reloading IDE will stop at your first breakpoint (in this manual you will not find what it is).

    Also there is a usefull page for checking cookies that the add-on sets: http://manual.pohape.ru/xtest/
参考:http://manual.pohape.ru/xdebug/

The best manual of how to use "The easiest Xdebug" addon for Firefox的更多相关文章

  1. python selenuim使用代理的方式

    一.FireFox浏览器 myProxy = "60.195.250.55:80" proxy = Proxy({ 'proxyType': ProxyType.MANUAL, ' ...

  2. OWASP出品:Xenotix XSS漏洞测试框架及简单使用

    OWASP Xenotix XSS Exploit Framework是一个高效的跨站脚本漏洞(XSS)检测和攻击测试框架.它通过特有的三大浏览器引擎(包括Trident, WebKit和Gecko) ...

  3. python应用:selenium之爬取天眼查信息

    inform_table.py # -*-coding:utf8-*- from selenium import webdriver from selenium.webdriver.common.pr ...

  4. Mongodb 3.2 Manual阅读笔记:CH9 存储

    9. 存储 9. 存储 9.1 存储引擎 9.1.1 WiredTiger存储引擎 9.1.1.1 文档级别并发 9.1.1.2 快照和检查点 9.1.1.3 Journaling 9.1.1.4 压 ...

  5. OpenCASCADE6.8.0 Reference Manual Serach Problem

    OpenCASCADE6.8.0 Reference Manual Serach Problem eryar@163.com 1. Problem 有网友反映OpenCASCADE6.8.0的Refe ...

  6. [MySQL Reference Manual]14 InnoDB存储引擎

    14 InnoDB存储引擎 14 InnoDB存储引擎 14.1 InnoDB说明 14.1.1 InnoDB作为默认存储引擎 14.1.1.1 存储引擎的趋势 14.1.1.2 InnoDB变成默认 ...

  7. Manual——Test (翻译1)

    LTE Manual ——Logging(翻译) (本文为个人学习笔记,如有不当的地方,欢迎指正!) 1.17.3 Testing framework(测试框架)   ns-3 包含一个仿真核心引擎. ...

  8. LTE Manual ——Logging(翻译)

    LTE Manual ——Logging(翻译) (本文为个人学习笔记,如有不当的地方,欢迎指正!) 9 Logging   ns-3 日志功能可以用于监测或调试仿真程序的进展.日志输出可以通过 ma ...

  9. ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'type=InnoDB' at line 7

    问题: 使用hibernate4.1.1,数据库使用mysql5.1.30,使用hibernate自动生成数据库表时,hibernate方言使用org.hibernate.dialect.MySQLI ...

随机推荐

  1. BeagleBone Black 从零到一 (2 MLO、U-Boot) 转

    文章原址:jexbat.com/categories/BeagleBone/ 什么是 U-Boot 熟悉嵌入式开发的应该都听过它,U-boot 就是启动系统前的一段引导程序,虽然是引导程序,但是功能非 ...

  2. switch语句以及三种循环语句的总结

    1:switch语句(1)格式:switch(表达式) {case 值1:语句体1;break;case 值2:语句体2;break;...default:语句体n+1;break;} 格式解释说明: ...

  3. 2019-1-9 c#时间格式

    DateTime now=DateTime.Now; //获取拼接形式的,精确到毫秒 now.ToString("yyyyMMddHHmmssfff"); //获取时间戳 自公元0 ...

  4. Codeforces.578E.Walking(构造)

    题目链接 \(Description\) 给定一个长为\(n\)的足迹序列(只包含\(L,R\)两种字符),你需要\(LRLRLR...\)这样交替在\(L\)和\(R\)上走(第一步可以选择\(L\ ...

  5. 利用"SQL"语句自动生成序号的两种方式

    1.首先,我们来介绍第一种方式: ◆查询的SQL语句如下: select row_number() over (order by name) as rowid, sysobjects.[id] fro ...

  6. 第一本docker书,,持续更新中

    1.查看应用是否在docker中部署成功 需要确认curl已安装 whereis curl sudo apt-get -y install curl curl localhost:8081   如果成 ...

  7. shell脚本使用技巧4--读取字符,重复执行

    ls | cat -n > out.txt 给输出的信息加行号并导出到out.txt 利用shell生成一个独立的进程 pwd; (cd /bin; ls); pwd; 开启一个子shell,不 ...

  8. C++程序设计方法4:成员函数模板

    成员函数的模板: 普通类的成员函数,也可以定义为函数模板,如: class normal_class { public: int value; template<typename T> v ...

  9. PHP05

    php05 1.音乐案例删除部分 1)通过执行某些PHP代码获取到指定的数据,填充到html的指定位置 accept属性也可以直接写扩展名,多个扩展名间用英文的逗号分隔 accept=".l ...

  10. Git 和 Repo常用命令

    这篇博客总结的也不错: git常用及进阶命令总结 Git与Repo入门 一.初始環境配置 git config --global user.name "John Doe"git c ...