php - 调试不启动

标签 php sublimetext2 lamp xdebug sublimetext

更新:

我在这上面花了太多时间,决定放弃它并继续使用笨重的 NetBeans。

原始问题:

我在让 xdebug 与 sublime text 2 一起工作时遇到了一些困难。

到目前为止我所做的是安装:

  1. 灯,
  2. php5-xdebug
  3. python2.6
  4. sublime-text-2
  5. sublimex调试

如果我然后使用 sublime 打开一个 php 文件并按 shift+f8,会弹出 xdebug 菜单,我可以从中添加/删除断点,也可以开始调试 .

一些PHP: Some php

当我按下 shift+f8 时,菜单会下拉: Menu drops down when I press shift+f8

调试开始:

enter image description here

在那张图片中它说:

Xdebug: No URL defined in project settings file

Info.sublime-project 包含:

{
    "folders":
    [
        {
            "path": "/var/www"
        }
    ],

    "settings": {
        "xdebug": { "url": "http://localhost" }
    }
}

正如您从第 3 个屏幕截图中看到的那样,我已经开始调试但没有任何反应,没有错误,没有打开浏览器窗口,什么都没有。如果我手动导航到 localhost/info.php,页面会正常加载。如果我手动将 ?XDEBUG_SESSION_START=sublime.xdebug 添加到 url 的末尾,那么 localhost/info.php?XDEBUG_SESSION_START=sublime.xdebug 并在浏览器上点击刷新,页面正常加载,但调试仍未开始。

我做错了什么?

更新:关于端口的一些信息:

在尝试通过 sublime text 2 启动 xdebug 之前

oshirowanen@ubuntu:~$ netstat -antp
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      -                 
tcp        0      0 90.190.20.220:54913     90.180.80.70:443        ESTABLISHED 2439/python     
tcp        0      0 90.190.20.220:51727     190.40.210.160:443      TIME_WAIT   -               
tcp        1      0 90.190.20.220:50967     90.180.90.20:80         CLOSE_WAIT  2349/ubuntu-geoip-p
tcp6       0      0 :::80                   :::*                    LISTEN      -               
oshirowanen@ubuntu:~$ 

在手动启动 chromium 并通过 sublime text 2 启动 xdebug 之后

oshirowanen@ubuntu:~$ netstat -antp
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:17500           0.0.0.0:*               LISTEN      2241/dropbox    
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:59424         127.0.0.1:80            ESTABLISHED 2924/chromium-brows
tcp        0      0 127.0.0.1:43123         127.0.0.1:9000          ESTABLISHED -               
tcp        0      0 127.0.0.1:9000          127.0.0.1:43123         ESTABLISHED 2903/sublime_text
tcp        0      0 90.190.20.220:40809     170.190.40.70:443       ESTABLISHED 2924/chromium-brows
tcp        0      0 90.190.20.220:54913     90.180.80.70:443        ESTABLISHED 2439/python     
tcp        0      0 90.190.20.220:43900     170.190.70.90:443       ESTABLISHED 2924/chromium-brows
tcp        0      0 90.190.20.220:35259     170.190.70.100:443      ESTABLISHED 2924/chromium-brows
tcp        0      0 127.0.0.1:59426         127.0.0.1:80            TIME_WAIT   -               
tcp        0      0 90.190.20.220:37922     170.190.70.90:443       ESTABLISHED 2924/chromium-brows
tcp        1      0 90.190.20.220:50967     90.180.90.20:80         CLOSE_WAIT  2349/ubuntu-geoip-p
tcp        0      0 90.190.20.220:40847     170.190.40.60:80        ESTABLISHED 2924/chromium-brows
tcp6       0      0 :::80                   :::*                    LISTEN      -               
tcp6       0      0 127.0.0.1:80            127.0.0.1:59423         TIME_WAIT   -               
tcp6       0      0 127.0.0.1:80            127.0.0.1:59424         ESTABLISHED -               
oshirowanen@ubuntu:~$ 

最佳答案

一些提示:

  1. 检查 Xdebug 是否正在运行检查 phpinfo 命令生成的信息。

  2. 在 xdebug 配置中启用远程调试(并使用 phpinfo 命令再次验证):

    xdebug.remote_enable=1

  3. 我不使用 Sublime Text 中的 xdebug 设置。我觉得没必要。

  4. 在 Sublime Text 中打开控制台。任何问题都会记录在控制台中。 pulgin 主页报告了 Ubuntu 中的一些问题。

  5. 我使用浏览器扩展来激活或停用调试。在 Chrome 中查找“Xdebug Helper for Chrome”。您需要将cookie名称配置为“sublime.xdebug”。

关于php - 调试不启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14033240/

相关文章:

sublimetext2 - 如何设置键盘快捷键以在 sublimetext2 中从制表符转换为空格

php - PDO异常 “could not find driver”

php - 在单独的服务器上监控 zip 的进度

php - Composer Windows 兼容脚本

sublimetext3 - Sublime Text中的对话框/调色板位置

javascript - 正则表达式 - 从字符第 N 次出现到字符串末尾的匹配

php - 如何在指定端口的命令行中启动 apache2?

mysql - 无法连接到谷歌云中的mysql服务器(LAMP)

javascript - 如何让来自ajax的数据成为Highchart中的X轴?

javascript - $(window).load后的Mysql查询减少页面的负载