Доступ к локальному серверу node.js через мобильный телефон через тот же общий Wi-Fi

Доступ к локальному серверу node.js через мобильный телефон через тот же общий Wi-Fi

РЕДАКТИРОВАТЬ: Я уже попадал в такую ​​ситуацию, но тогда это было связано с Apache. Но на этот раз я используюNodeJS, поэтому старый ответ не помогает.


Я использую Apache как веб-сервер NodeJS (на порту 80) на Windows 7. Я хочу получить доступ к веб-серверу через свой мобильный телефон, который использует тот же Wi-Fi-роутер, что и мой ПК локально.

http://localhostработает с ПК.

Но я не могу зайти http://192.168.1.4ни с телефона, ни даже с компьютера.

ipconfig /allна моем компьютере указан мой IP-адрес как 192.168.1.4

Wireless LAN adapter Wireless Network Connection:
    IPv4 Address. . . . . . . . . . . : 192.168.1.4(Preferred)

Я могу пропинговать (внутренний) IP-адрес моего телефона [192.168.1.5] с ПК и наоборот, я могу пропинговать мой ПК [192.168.1.4] с моего телефона.

Так почему же я не могу получить доступ http://192.168.1.4с телефона? (или ПК)


Брандмауэр отключен.

решение1

https://stackoverflow.com/questions/7980995/accesing-internal-web-server-running-node-js/7983852#7983852

Я указал имя хоста при прослушивании на сервере.

сервер.listen(80, процесс.env.OPENSHIFT_NODEJS_IP || процесс.env.IP || '127.0.0.1')

решение2

Необходимо добавить

Listen 192.168.1.4:80

в httpd.conf Apache

решение3

Этот код исправил проблему для меня (добавление локального IP:192.168.1.7 в моем случае с localhost)

var app = express();
app.listen(3000,'192.168.1.7' || 'localhost',function() {
    console.log('Application worker ' + process.pid + ' started...');
  }
  );

Таким образом, вы можете получить доступ к серверу изhttp://localhost:3000илиhttp://192.168.1.7:3000(мой локальный IP-адрес 192.168.1.7)

Связанный контент