概述
phpstorm + Xshell隧道 + xdebug 远程调试云主机生产环境的php
- 1、Windows下使用Xshell创建隧道
- 1.1、新建会话
- 1.2不分配终端
- 1.3添加一个远程(R)隧道
- 1.4输入日志
- 1.5修改云主机ssh配置
- 1.6ssh隧道连接
- 1.7查看云主机 9090端口状态
- 2、云主机安装xdebug扩展
- 2.1重启PHP
- 2.2检查云主机上xdebug是否正确安装
- 3、PHPStorm配置远程编码
- 4、PHPStorm配置远程调试
1、Windows下使用Xshell创建隧道
为了把阿里云主机上的9090端口的数据转发到本地无固定IP的Windows开发环境,我们使用Xshell,创建一个ssh隧道在ssh连接上建立加密通道,进行云主机9090端口数据的转发。
ssh隧道有三种:本地(L)、远程(R)和动态(D),我们场景需要使用的是远程(R)ssh隧道。
下面我们打开Xshell来创建隧道,步骤如下
1.1、新建会话
我们新建一个会话,填好名称、主机信息。注意:勾选连接异常关闭时自动重新连接,间隔可自己设置,这里是60秒
1.2不分配终端
为安全起见,服务器上用于建立隧道的用户,可以被被设置为不允许通过Shell登录的。如果设置了,那我们需要设置Xshell在进行SHH连接时不分配终端。
1.3添加一个远程(R)隧道
我们添加一个远程(R)隧道,则将云服务器的9090端口,映射到localhost:9090端口,从而达到将云服务器9090端口的数据转发到本地xdebug对应的9090端口的目的。
1.4输入日志
为了能了隧道的运行情况,我们设置Xshell输出隧道相关的日志。
到这里,Xshell创建隧道就快结束了。
1.5修改云主机ssh配置
在/etc/ssh/sshd_config中设置GatewayPorts yes
vi /etc/ssh/sshd_config
设置:
#GatewayPorts no
GatewayPorts yes
保存后重启ssh服务
systemctl restart sshd.service
1.6ssh隧道连接
这时,我们可以进行连接创建ssh隧道,输出信息如下:
Xshell 6 (Build 1326)
Copyright (c) 2002-2017 NetSarang Computer, Inc. All rights reserved.
Type `help' to learn how to use Xshell prompt.
[c:~]$
Connecting to 121.196.166.166:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
[13:31:07] Outgoing packet message id: 20, length: 1403
[13:31:07] Incoming packet message id: 20
[13:31:07] Outgoing packet message id: 30, length: 37
[13:31:07] Incoming packet message id: 31
[13:31:07] Outgoing packet message id: 21, length: 1
[13:31:07] Incoming packet message id: 21
[13:31:07] Outgoing packet message id: 5, length: 17
[13:31:07] Incoming packet message id: 6
[13:31:07] Outgoing packet message id: 50, length: 35
[13:31:07] Incoming packet message id: 51
[13:31:07] Outgoing packet message id: 50, length: 55
[13:31:07] Incoming packet message id: 52
[13:31:07] Outgoing packet message id: 80, length: 42
[13:31:07] Incoming packet message id: 80
[13:31:07] Incoming packet message id: 4
[13:31:07] Incoming packet message id: 81
[13:31:07] Trying to listen remote port 9090... Success.
1.7查看云主机 9090端口状态
netstat -lnpt |grep 9090
tcp 0 0 0.0.0.0:9090 0.0.0.0:* LISTEN 6094/sshd: root
我们的ssh隧道就创建好了。
2、云主机安装xdebug扩展
我们使用宝塔面板安装xdebug扩展。
我们对xdebug进行配置,和开发环境一致。
[Xdebug]
xdebug.collect_params=1
xdebug.collect_return=1
xdebug.auto_trace=On
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.remote_host = "localhost"
xdebug.remote_port=9090
xdebug.remote_handler="dbgp"
xdebug.profiler_append = 0
xdebug.remote_enable=On
xdebug.idekey=phpstorm-xdebug
2.1重启PHP
2.2检查云主机上xdebug是否正确安装
我们通过phpinfo()来检查xdebug是否正确安装
<?php
phpinfo();
?>
3、PHPStorm配置远程编码
大家可以参考《 阿里云centos搭建ftp+Phpstorm配置文件夹映射到云服务器进行远程编码》。
4、PHPStorm配置远程调试
现在,我们就可以像配置本地高度环境一样来配置远程调试环境。
大家可以参考《 PhpStorm2020 + phpstudyV8 +XDebug》。
最后
以上就是外向天空为你收集整理的phpstorm + Xshell隧道 + xdebug 远程调试云主机生产环境的php1、Windows下使用Xshell创建隧道2、云主机安装xdebug扩展3、PHPStorm配置远程编码4、PHPStorm配置远程调试的全部内容,希望文章能够帮你解决phpstorm + Xshell隧道 + xdebug 远程调试云主机生产环境的php1、Windows下使用Xshell创建隧道2、云主机安装xdebug扩展3、PHPStorm配置远程编码4、PHPStorm配置远程调试所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复