温馨提示×

Debian PHP远程调试怎么操作

小樊
62
2025-04-22 05:31:58
栏目: 编程语言

在Debian系统上进行PHP远程调试,通常需要以下几个步骤:

  1. 安装Xdebug扩展
  • 使用以下命令安装Xdebug:
sudo apt-get update
sudo apt-get install php-xdebug
  • 编辑你的 php.ini 文件(通常位于 /etc/php/7.x/cli/php.ini/etc/php/7.x/apache2/php.ini),并添加以下内容:
zend_extension=xdebug.so
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
xdebug.start_with_request=yes
  • 保存并关闭文件,然后重启你的Web服务器(例如Apache或Nginx)以使更改生效。
  1. 配置IDE
  • 使用支持Xdebug的IDE(如Visual Studio Code、PhpStorm等)。
  • 在IDE中配置Xdebug,并在代码中设置断点。
  • 通过IDE启动调试会话,访问你的应用程序,Xdebug将会在断点处暂停执行,允许你逐步执行代码并检查变量值。
  1. 防火墙配置
  • 确保防火墙允许Xdebug使用的端口(默认是9003)。你可以使用以下命令来配置防火墙:
sudo iptables -A INPUT -p tcp --dport 9003 -j ACCEPT
sudo service iptables save
  1. 使用PHP内置的错误报告和日志记录功能
  • 在你的PHP文件的开头添加以下代码,以确保错误能够被记录:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
  • 你还可以将错误记录到文件中,以便稍后查看:
log_errors = On
error_log = /var/log/php_errors.log
  1. 配置PHPUnit进行远程调试(可选):
  • 如果你使用PHPUnit进行测试,可以在 phpunit.xml 文件中添加以下设置:
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"
         bootstrap="vendor/autoload.php"
         colors="true">
    <testsuites>
        <testsuite name="My Test Suite">
            <directory suffix="Test.php">./tests/</directory>
        </testsuite>
    </testsuites>
    <filter>
        <whitelist processUncoveredFilesFromWhitelistFromPath=".</whitelist>
    </filter>
</phpunit>
  • 在IDE中设置远程调试配置,指定服务器名称或IP地址、端口(默认为10000)以及用于身份验证的Xdebug密码。

请注意,远程调试可能会带来安全风险,因此请确保你的调试环境是安全的,并且只有授权的人员能够访问调试端口。

0