问题描述
我想知道如果任何人都可以揭示相应措施的光带,以确保以下设置将允许Xdebug的和PHPStorm工作。
我们有运行良好一个LAMP栈,用PHP和Xdebug 3上的天青VM上运行。
我们是一个共享的办公网络与公网IP地址,但对防火墙进线用不上的,尽管它很轻松。
我们的目标是连接我们的机器(X3)来调试我们的远程Web服务器(在Azure的VM的LAMP堆栈)。
我们可以创建一个SSH隧道到Web服务器没有问题。但调试是行不通的。 IE。当我们启动一个网页,调试器确实什么都没有。
时别人跑这样的设置和确认我们是否缺少一个步骤,以确保成功连接。
server.port=9000
解决方法
在我的情况下,通过确保设置如下来解决此问题
[xdebug]
zend_extension=xdebug
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
xdebug.remote_log=/tmp/xdebug.log
xdebug.log=/var/log/xdebug.log
我使用 pydbgpproxy
cd /opt
sudo mkdir pydbgpproxy
cd pydbgpproxy
sudo wget https://github.com/Mirocow/pydbgpproxy/archive/master.zip ./
sudo unzip master.zip ./
sudo ln -s $(pwd)/pydbgpproxy /usr/local/bin/pydbgpproxy
编辑 pydbgpproxy
cd /opt/pydbgpproxy/pydbgpproxy-master/
sudo nano pydbgpproxy
在第 333 行中,将行 add=xxx 替换为
addr = ['127.0.0.1',long(idekey)]
在服务器上启动pydbgproxy
nohup sudo /opt/pydbgpproxy/pydbgpproxy-master/pydbgpproxy -i 127.0.0.1:1001-d 127.0.0.1:1003 &
使用 SSH 隧道创建到开发服务器的 SSH 连接:
Source Port: 1234 **This must match your unique IDE key set below.**
Destination: 127.0.0.1:1003
在 PhpStorm 中将调试器端口更改为 9003
File > Settings > Languages & Frameworks > PHP > Debug
Debug Port: 1003
将您的代理设置更改为:
File > Settings > Languages & Frameworks > PHP > Debug > DBGp Proxy
IDE Key: 1234 **Unique IDE Key - This must be unique to you and must be numerical**
Host: 0.0.0.0 **External IP Address of the Dev Server**
Port: 1001
确保您的 xdebug 辅助扩展设置为使用密钥 1234
您在上面设置的 IDE 密钥必须是唯一的