我在一个mean.js应用程序上工作(在express.js> node.js之上)。 我成功使用节点检查器在本地(在kubuntu上)调试它,没问题。 但是我在网络上推送我的应用后,无法远程调试(从ubuntu服务器)。
我在devtools控制台上收到此错误:
Page.getResourceContent失败。错误:ENOENT,打开 ' /home/remi/publisher-server/server.js'错误:找不到模块 ' /usr/lib/node_modules/node-inspector/lib/InjectorServer.js'
但server.js
的文件权限为775
,并归我所有。
如果查看此屏幕截图,您可以看到浏览器访问所有文件树和内容:
但是,如果你查看那个,你会发现只有server.js
似乎不可读(内容标签为空):
以下是我遵循的步骤:
我使用此ssh选项登录我的服务器以重定向5858
端口
ssh -L 5858:localhost:5858 my-remote-host
在ssh会话中,我使用--debug
选项运行应用程序:
$ cd ~/publisher-server
$ node --debug server.js
debugger listening on port 5858
Application loaded using the "development" environment configuration
MEAN.JS application started on port 3000
从我的笔记本电脑上运行:
$ node-inspector
Node Inspector v0.10.1
Visit http://127.0.0.1:8080/debug?ws=127.0.0.1:8080&port=5858 to start debugging.
Cannot resolve real path of /home/remi/publisher-server/server.js: Error: ENOENT, lstat '/home/remi/publisher-server'
当我最终浏览http://127.0.0.1:8080/debug?ws=127.0.0.1:8080&port=5858
时,您可以注意到在devtools控制台中再次发现错误的最后一行:
Page.getResourceContent失败。错误:ENOENT,打开 ' /home/remi/publisher-server/server.js'错误:找不到模块 ' /usr/lib/node_modules/node-inspector/lib/InjectorServer.js'
这让我有点疯狂,我做错了什么?