node.js и npm не имеют доступа к сети в Windows 7 64-битной предельной - PullRequest
24 голосов
/ 10 февраля 2012

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

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

Node.exe и npm оба не имеют доступа к сети. npm install отправляет запросы на получение и никогда не получает ответ. Скрипты узла, которые обращаются к mongodb, никогда не отправляют запрос на соединение. Я скопировал этот код со своей старой машины на мою новую. Это было первое, что я поставил на новую машину. Старая машина работала под управлением Windows 7 64 Home Premium, а новая - под Windows 7 64 Ultimate. Я перепробовал все режимы совместимости, работая от имени администратора, отключив брандмауэр Windows, антивируса пока нет, я удалил / переустановил, и я попытался изменить версии, даже если версия со старого компьютера на новую одинакова. Я искал stackoverflow и Интернет и нашел других с этой проблемой, но без решений. У меня есть виртуальный ящик Ubuntu VM, который может успешно запустить узел, однако я хотел бы иметь возможность запускать его без VM, если это возможно, и я не могу найти причину проблем. Даже OEM-программное обеспечение между двумя компьютерами практически идентично, так как старое было Alienware M15x, ​​а новое - M14x. Любая помощь приветствуется.

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

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

Ответы [ 3 ]

1 голос
/ 31 мая 2015

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

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

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

0 голосов
/ 11 апреля 2012

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

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

0 голосов
/ 01 марта 2012

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...