首页主机资讯phpstorm在Ubuntu中如何进行远程调试

phpstorm在Ubuntu中如何进行远程调试

时间2025-10-27 19:05:03发布访客分类主机资讯浏览732
导读:1. 准备工作 确保Ubuntu服务器已安装PHP(如PHP 8.1+)和Web服务器(Apache/Nginx),并具备SSH访问权限;本地机器安装PhpStorm(2025.x及以上版本)。 2. 在Ubuntu服务器上安装Xdebug...

1. 准备工作
确保Ubuntu服务器已安装PHP(如PHP 8.1+)和Web服务器(Apache/Nginx),并具备SSH访问权限;本地机器安装PhpStorm(2025.x及以上版本)。

2. 在Ubuntu服务器上安装Xdebug
通过终端执行以下命令安装Xdebug扩展:

sudo apt-get update
sudo apt-get install php-xdebug

安装完成后,Xdebug会自动集成到PHP环境中,但需进一步配置。

3. 配置Xdebug参数
编辑PHP配置文件(根据PHP运行模式选择路径,如Apache用/etc/php/8.1/apache2/php.ini,PHP-FPM用/etc/php/8.1/fpm/php.ini),在文件末尾添加以下配置:

[xdebug]
zend_extension=xdebug.so  ;
     加载Xdebug扩展(路径可通过`php -i | grep extension_dir`确认)
xdebug.mode=debug         ;
     启用调试模式
xdebug.client_host=192.168.1.100  ;
     本地机器的IP地址(需替换为实际IP,用于Xdebug连接)
xdebug.client_port=9003   ;
     调试端口(默认9003,需与PhpStorm设置一致)
xdebug.start_with_request=yes  ;
     自动启动调试(可选:trigger/yes,推荐yes简化操作)
xdebug.idekey=PHPSTORM    ;
     IDE标识(需与PhpStorm配置一致)
xdebug.log=/tmp/xdebug.log  ;
     可选:记录调试日志(排查问题时启用)

保存文件后,重启Web服务器使配置生效:

# Apache
sudo systemctl restart apache2
# Nginx + PHP-FPM
sudo systemctl restart php8.1-fpm &
    &
     sudo systemctl restart nginx

4. 在PhpStorm中配置远程解释器
打开PhpStorm,进入File > Settings > Languages & Frameworks > PHP,点击右上角齿轮图标→Add,选择Remote类型:

  • Interpreter:输入远程服务器的PHP路径(如/usr/bin/php,通过which php获取);
  • Sync folders:设置本地项目路径(如/home/user/project)与远程服务器项目路径(如/var/www/html/my_project)的映射;
  • 点击Test Connection验证连接,成功后点击OK保存。

5. 配置PHP Servers
进入File > Settings > Languages & Frameworks > PHP > Servers,点击+添加新服务器:

  • Name:自定义名称(如Remote Server);
  • Host:远程服务器的IP地址或域名(如192.168.1.100);
  • Port:Web服务器端口(HTTP用80,HTTPS用443);
  • Debugger:选择Xdebug
  • 勾选Use path mappings,确保本地与远程路径正确映射(如本地/home/user/project→远程/var/www/html/my_project);
  • 点击OK保存。

6. 配置调试监听端口
进入File > Settings > Languages & Frameworks > PHP > Debug,确认Debug port设置为与Xconfig中xdebug.client_port一致的9003;切换至DBGp Proxy标签,设置:

  • IDE keyPHPSTORM(与Xdebug配置一致);
  • Host:远程服务器IP(如192.168.1.100);
  • Port9001(默认,可与Xdebug的client_port不同);
    点击OK保存。

7. 启动调试会话

  • 在PhpStorm中打开需要调试的PHP文件,点击行号左侧设置断点(红色圆圈);
  • 点击顶部工具栏的电话听筒图标(或使用快捷键Shift+F9)启动调试监听;
  • 在浏览器中访问远程项目,触发断点:
    • 方式一:手动添加参数(适用于URL访问),如http://192.168.1.100/my_script.php?XDEBUG_SESSION_START=PHPSTORM
    • 方式二:安装浏览器扩展(如Xdebug Helper),点击扩展图标切换至Debug模式后访问。

8. 验证与调试
当代码执行到断点时,PhpStorm会自动暂停,显示Debug工具窗口。可通过窗口查看:

  • Variables:当前变量值;
  • Call Stack:调用堆栈;
  • Console:执行控制台;
  • 使用Step Over(F8)、Step Into(F7)、Step Out(Shift+F8)等按钮进行单步调试。

常见问题排查

  • 端口冲突:若9003端口被占用,修改Xconfig和PhpStorm中的client_port为其他端口(如9007),并同步更新;
  • 路径映射错误:确保本地与远程路径一一对应,可通过Validate remote environment(在Servers配置中)验证;
  • Xdebug未加载:通过php -m | grep xdebug确认扩展是否加载,未加载则检查php.ini路径和zend_extension配置;
  • 防火墙拦截:确保Ubuntu服务器的防火墙允许client_port(如9003)的入站连接(sudo ufw allow 9003/tcp)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: phpstorm在Ubuntu中如何进行远程调试
本文地址: https://pptw.com/jishu/735989.html
Ubuntu下phpstorm如何进行单元测试 Debian文件系统如何压缩文件

游客 回复需填写必要信息