2017-02-13 6 views
-1

最後に、私は自分のプロジェクトをテストしたところ問題がありました。別のコンピュータのエクスプレスジェネレータを使用してNodeJSサーバにアクセスできない

ExpressJSを使用してNodeJSサーバーを開きました。地元では、すべてがOKです。

しかし、別のコンピュータは自分のサーバーにアクセスできません。

私のIPアドレスは「172.30.6.191」で、ポートは「8080」です。

私はエクスプレスジェネレータの基本コードを変更しません。

ここにWWW.jsファイルコードがあります。別のコンピュータからこのサーバーにアクセスする方法

#!/usr/bin/env node 
 

 
/** 
 
* Module dependencies. 
 
*/ 
 

 
var app = require('../app'); 
 
var debug = require('debug')('skeleton1:server'); 
 
var http = require('http'); 
 

 
/** 
 
* Get port from environment and store in Express. 
 
*/ 
 

 
var port = normalizePort(process.env.PORT || '8080'); 
 
app.set('port', port); 
 

 
/** 
 
* Create HTTP server. 
 
*/ 
 

 
var server = http.createServer(app); 
 

 
/** 
 
* Listen on provided port, on all network interfaces. 
 
*/ 
 

 
server.listen(port); 
 
server.on('error', onError); 
 
server.on('listening', onListening); 
 

 
/** 
 
* Normalize a port into a number, string, or false. 
 
*/ 
 

 
function normalizePort(val) { 
 
    var port = parseInt(val, 10); 
 

 
    if (isNaN(port)) { 
 
    // named pipe 
 
    return val; 
 
    } 
 

 
    if (port >= 0) { 
 
    // port number 
 
    return port; 
 
    } 
 

 
    return false; 
 
} 
 

 
/** 
 
* Event listener for HTTP server "error" event. 
 
*/ 
 

 
function onError(error) { 
 
    if (error.syscall !== 'listen') { 
 
    throw error; 
 
    } 
 

 
    var bind = typeof port === 'string' 
 
    ? 'Pipe ' + port 
 
    : 'Port ' + port; 
 

 
    // handle specific listen errors with friendly messages 
 
    switch (error.code) { 
 
    case 'EACCES': 
 
     console.error(bind + ' requires elevated privileges'); 
 
     process.exit(1); 
 
     break; 
 
    case 'EADDRINUSE': 
 
     console.error(bind + ' is already in use'); 
 
     process.exit(1); 
 
     break; 
 
    default: 
 
     throw error; 
 
    } 
 
} 
 

 
/** 
 
* Event listener for HTTP server "listening" event. 
 
*/ 
 

 
function onListening() { 
 
    var addr = server.address(); 
 
    var bind = typeof addr === 'string' 
 
    ? 'pipe ' + addr 
 
    : 'port ' + addr.port; 
 
    debug('Listening on ' + bind); 
 
}

お願いします。

ありがとうございます。

+1

これはIPv4アドレスで実行されているため、ローカルネットワーク内で実行されている可能性があります。ルータのポートをポートに転送するか、同じネットワーク上に他のコンピュータを置き、ローカルIPを使用する必要があります。 – PaulBGD

+0

@PaulBGDうーん...すみません。私に詳細を教えてください。 – Fortuneman

+0

詳細は何ですか? – PaulBGD

答えて

2

他のコンピュータも同じWi-Fiネットワークに接続されていることを確認してください。

+0

サーバのIPアドレス172.30.6.191と別のコンピュータのIPアドレスは172.30.6.160です。これは同じネットワークではありませんか?ネットワークは無線LANを使用せず、LANを使用します。 – Fortuneman

関連する問題