2016-09-10 1 views
1

Я экспериментирую с node.js и express.js.Невозможно подключиться из другой сети express.js

Когда я пытаюсь подключиться к своему веб-серверу с любого компьютера в своей сети, он работает, но затем, когда я пытаюсь подключиться извне, время соединения отключается.

var app = require('express')(); 
var http = require('http').Server(app); 
app.get('/', function(req, res) { 
    res.send("Hello World"); 
}); 
http.listen(3000, '0.0.0.0', function() { 
    console.log("Listening on port 3000!"); 
}); 
+1

Используйте * образец кода * вместо * JS/html/css snippet *, когда код не может быть выполнен на SO. –

+0

@EmileBergeron извините, спасибо –

+0

Возможно, вам просто нужно открыть порт 3000 с вашего интерфейса администратора маршрутизатора и, возможно, переслать его на сервер. –

ответ

2

Я просто проверял свой код и я могу получить доступ к серверу из-за пределов своей локальной сети, перейдя:

http://173.0.[my].[ip]:3000

Так что код правильный. Возможно, вам нужно открыть порт 3000 во внешний мир. Вот как это можно сделать.

через маршрутизатор интерфейс администратора

Вот мой, например:

Single port forwarding

Где 192.168.1.130 является локальным IP ПК я запущен сервер HTTP на.

Не забудьте нажать Сохраните настройки в этом интерфейсе, чтобы применить изменения.

Используя инструмент как ngrok (упоминаемый eddiezane)

Установите ngrok через веб-сайт или не выходя из командной строки, с оберткой ngrok узла.

npm install ngrok -g 

Запустите сервер HTTP, а затем запустить:

ngrok http 3000 

Перейдите к одному из URL перед Forwarding:

ngrok http forward port 3000

Бесплатная версия является более для быстрого тест и менее как окончательный способ разоблачения услуги в производственной среде, так как каждый раз, когда вы перезапускаете ngrok, новый URL-адрес user-hostile данный вам.

Другие возможные проблемы

  • Это также может быть то, что вам нужно добавить исключение в брандмауэр (если на окнах).
+0

Почему вы использовали порт 8888, следует ли использовать 3000 для моего? –

+0

@MooShoeGaming Я обновил изображение, чтобы внести точные изменения –

+0

Thank you! Это сработало отлично! –

1

Чтобы добавить к ответу Эмиля, я бы посмотрел ngrok, который является прекрасным инструментом, который генерирует вам общедоступный URL-адрес для порта на вашем локальном компьютере.

Вот хороший blog post на нем мой друг написал.

+0

Что вы! Это было действительно полезно! –