在Debian上进行Node.js的远程调试,可以通过以下步骤实现:
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
这里安装的是Node.js 14.x版本,你可以根据需要选择其他版本。
const v8 = require('v8');
const express = require('express');
const app = express();
const port = 3000;
// 启用远程调试
app.get('/debug', (req, res) => {
const target = 'ws://localhost:9229/debug?port=' + req.query.port;
const debuggerScript = `
var debuggerScript = document.createElement('script');
debuggerScript.src = '${target}';
document.head.appendChild(debuggerScript);
`;
res.send(debuggerScript);
});
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(port, () => {
console.log(`Server is running at http://localhost:${port}`);
});
这段代码会在访问/debug路由时,生成一个WebSocket调试链接。
node app.js
ssh -L 9229:localhost:9229 your_username@your_debian_server_ip
这里将本地的9229端口映射到Debian服务器的9229端口。your_username是你的Debian用户名,your_debian_server_ip是你的Debian服务器IP地址。
chrome://inspect。在"Remote Target"部分,你应该能看到你的Debian服务器上的Node.js应用程序。点击"inspect"链接,将打开Chrome DevTools界面,你可以在这里进行远程调试。注意:在进行远程调试时,请确保你的Node.js应用程序和本地计算机之间的网络连接是安全的。不要在生产环境中暴露调试端口。