2016-02-10 3 views
0

Я запускаю приложение node.js на сервере, и он отлично работает на локальном хосте, но я не могу получить доступ к нему удаленно из других систем вне локальной сети.Как получить доступ к node.js из-за пределов локальной сети (LAN)?

Это связано с тем, что между моим сервером (Windows Server 2003) и Интернетом есть маршрутизатор, который не позволяет открывать порт 3000.

Так что я хочу, чтобы слушать на порту 80, но если запрос на определенный URL, я хочу, чтобы перенаправить его на порт 3000.

Как мне это сделать? Любая помощь будет оценена по достоинству.

+0

Разделите код node.js, который запускает сервер. Вы прослушивали ip 0.0.0.0? –

+0

И если вы хотите прокси-порт 80 на порт 3000 со стороны программного обеспечения, я не думаю, что Node может это сделать. Вам понадобится служба Apache или nginx для перенаправления запроса. –

+0

@ cricket_007 Узел может определенно сделать это, хотя ему нужно будет запускаться как root для привязки к привилегированному порту. Затем он может использовать 'process.setuid' для понижения и продолжения работы как обычный пользователь, так же, как и Apache и Nginx. – Paulpro

ответ