2012-02-10 5 views
24

ПРИМЕЧАНИЕ: всем, у кого есть эта проблема, я пробовал все предложения и все исследования. В конце концов я отформатировал жесткий диск и переустановил окна. Несмотря на то, что это была новая установка с самого начала, некоторые установки Windows просто не работают вообще с узлом. Насколько я знаю, это единственное решение.node.js и npm не имеют доступа к сети в Windows 7 64-разрядная версия

Итак, для начала я нашел аналогичный вопрос: Basic Node.js examples not working on Windows 7, который, похоже, та же проблема, но решения нет. Я также нашел сообщения в форуме онлайн без каких-либо решений, но многие люди публиковали одни и те же проблемы.

Node.exe и npm оба не имеют доступа к сети. npm install отправляет запросы на получение и никогда не получает ответа. Сценарии узлов, которые идут на доступ к mongodb, никогда не отправляют запрос на соединение. Я скопировал этот код с моей старой машины на новую. Это было первое, что я поставил на новую машину. Старая машина запускала Windows 7 64 home premium и новую версию Windows 7 64. Я пробовал все режимы совместимости, запускался как администратор, отключил брандмауэр Windows, антивирус еще не был, я удалил/переустановил, и я попытался изменить версии, хотя версия с старого компьютера на новый одинакова. Я искал stackoverflow и Интернет и нашел других с проблемой, но никаких решений. У меня есть виртуальный ящик ubuntu vm, который может успешно запускать узел, но я хотел бы иметь возможность запускать его без vm, если это возможно, и я не могу найти никакой причины проблем. Даже OEM-программное обеспечение между двумя компьютерами почти идентично, поскольку старый был чужеродным m15x, а новый - m14x. Любая помощь приветствуется.

редактировать:

Я использую последнюю версию в настоящее время (0.6.10). После запуска НОЙ установки и иметь его повесить, я использовал 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 домашней страницы, я не могу получить привет мира в браузер, однако соединение в 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 не смог найти широковещательное отладочное сообщение vm на порту 5858. Он буквально просто не имеет связи. Поэтому, если у кого-то нет других идей, кроме протирания жесткого диска и переустановки окон, я думаю, что этот компьютер возвращается к чужой программе как DOA. давайте надеемся, что у следующего нет этой проблемы. Спасибо всем, кто предлагал вещи в комментариях и всем, кто пытался расследовать решение для меня.

+0

Какая версия Node.js? –

+1

Какая версия 'node.js'? Что происходит, когда вы запускаете простой скрипт HTTP-сервера в связанном вопросе? «Netstat» (или эквивалент Windows, если он не называется «netstat'), показывает, что сервер прослушивает? Какие клиенты не работают? Можете ли вы использовать 'telnet' или' nc' или аналогичную программу для подключения к поддельному серверу? Вызывается ли это только для модуля 'http' или не выполняется для других предварительно упакованных серверов node.js? – sarnold

+0

только что обновил сообщение со всей этой информацией – user1084563

ответ

0

С той же ОС у меня нет этой проблемы, но у меня уже проблемы с загрузкой некоторых пакетов (мне нужен узел mysql). Чтобы исправить это, мне пришлось загрузить исходный код с github, извлеките его в репозитории node_modules и переименуйте его как «mysql».

Теперь я могу сделать var mysql = require('mysql');

+0

Это будет работать для меня, чтобы получить пакеты, но пакеты по-прежнему не имеют сетевого подключения. Инициирование базового HTTP-сервера использует только внутренние пакеты узлов и должно работать из коробки, поэтому мои проблемы немного сложнее. – user1084563

0

Может быть, даже попробовать Cygwin. Это шаг назад и от чистой виртуальной Linux, и от ее запуска для работы в Windows 7. Лично у меня есть как Cygwin, так и Windows 7 для node.js на 64-битной (хотя и не конечной).

Мне просто нужно было установить узел в каталог за пределами «программных файлов» из-за защиты от записи и настроек безопасности. Все равно придется запускать консоль в качестве администратора, но чтобы убедиться, что все работает. У Cygwin нет ни одной из этих проблем.

1

Если вы находитесь за корпоративной сетью, которая, вероятно, нуждается в настройке прокси-сервера на узле, который нужно настроить. Он работает примерно так

npm config set proxy http://proxy.company.com:8080 
npm config set https-proxy http://proxy.company.com:8080 

Замените имя прокси-сервера на то, что использует ваша сеть.

+0

Я не был за одним, но спасибо за предложение. Переустановка ОС с нуля исправила его для меня. – user1084563

 Смежные вопросы

  • Нет связанных вопросов^_^