【发布时间】:2012-03-02 13:17:37
【问题描述】:
注意:对于遇到此问题的其他人,我尝试了所有建议和所有研究。最后我格式化了硬盘并重新安装了windows。尽管从一开始就是全新安装,但某些 Windows 安装似乎根本无法与节点一起使用。据我所知,这是唯一的解决方案。
首先,我已经找到了类似的问题: Basic Node.js examples not working on Windows 7 这似乎是同一个问题,但没有解决方案。我还发现网上论坛帖子没有解决方案,但很多人都发布了相同的问题。
Node.exe 和 npm 似乎都没有网络访问权限。 npm install 发送获取请求,但从未得到响应。访问 mongodb 的节点脚本从不发送连接请求。我将此代码从旧机器复制到新机器。这是我放在新机器上的第一件事。旧机器运行的是 windows 7 64 家庭高级版和新的 windows 7 64 终极版。我已经尝试了所有兼容模式,以管理员身份运行,禁用 Windows 防火墙,还没有防病毒软件,我卸载/重新安装,并且我尝试更改版本,即使从旧计算机到新计算机的版本相同。我搜索了 stackoverflow 和互联网,发现其他人有问题但没有解决方案。我有一个可以成功运行节点的虚拟机 ubuntu vm,但是如果可能的话,我希望能够在没有 vm 的情况下运行它,而且我似乎找不到任何问题的原因。甚至两台计算机之间的 OEM 软件也几乎相同,因为旧的是外星人 m15x,而新的是 m14x。任何帮助表示赞赏。
编辑:
我目前使用的是最新版本 (0.6.10)。运行 npm install 并挂起后,我使用netstat 并在 node.exe 下得到以下结果:
[node.exe]
TCP 10.20.21.225:49690 ec2-107-20-159-167.compute-1.amazonaws.com:https ESTABLISHED
[node.exe]
TCP 10.20.21.225:49691 nuq04s08-in-f31.1e100.net:https TIME_WAIT
TCP 10.20.21.225:49692 fa-in-f94.1e100.net:https TIME_WAIT
TCP 10.20.21.225:49693 nuq04s08-in-f19.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49696 nuq04s08-in-f25.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49702 nuq04s08-in-f6.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49703 nuq04s08-in-f25.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49704 nuq04s08-in-f25.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49706 nuq04s08-in-f26.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49707 nuq04s08-in-f26.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49708 nuq04s08-in-f26.1e100.net:http TIME_WAIT
TCP 10.20.21.225:49709 nuq04s08-in-f26.1e100.net:http TIME_WAIT
现在,当我在 node.js 主页上运行示例服务器时,我无法在浏览器中获取 hello world,但是连接在 netstat 中:
[node.exe]
TCP 127.0.0.1:1337 Robbie-PC:49805 ESTABLISHED
[node.exe]
TCP 127.0.0.1:7789 Robbie-PC:49158 ESTABLISHED
但是当我稍等片刻时,它会变成:
[node.exe]
TCP 127.0.0.1:1337 Robbie-PC:49805 CLOSE_WAIT
[node.exe]
TCP 127.0.0.1:7789 Robbie-PC:49158 ESTABLISHED
编辑 2:
所以我尝试禁用所有其他连接.. 不走运。然后我尝试在eclipse中使用调试器,甚至eclipse都找不到在端口5858上广播的vm调试器。它实际上只是没有连接。因此,除非有人最终除了擦除硬盘驱动器和重新安装 Windows 之外还有其他想法,否则我认为这台计算机将回到 Alienware 作为 DOA。希望下一个没有这个问题。感谢所有在 cmets 中提出建议的人,以及所有试图为我研究解决方案的人。
【问题讨论】:
-
什么版本的 Node.js?
-
node.js的哪个版本?当您在链接问题中运行简单的 HTTP 服务器小脚本时会发生什么?netstat(或 Windows 等价物,如果未命名为netstat)是否显示服务器正在侦听?哪些客户端不工作?您可以使用telnet或nc或类似程序连接到假服务器吗?是只对http模块失败还是对其他预打包的node.js服务器失败? -
我遇到了这个确切的问题。在完全相同的网络上运行 Windows XP 的 PC 可以正常工作。
-
您尝试过内部 node.js 调试器:nodejs.org/docs/latest/api/debugger.html 吗? (注意:我有 Windows 7 64 Ultimate 和 node.js 对我来说很好)
-
您是否有多个可用的网络点?像无线和以太网一样,节点可能会感到困惑?那些也启用了 ipv6?