9

こんにちは、Ubuntu 12.04.2 のポート 80 で node.js Web サーバーを実行しようとしています。このマシンはクリーン インストールで、私がインストールしたのは openssh-server nodejs と screen だけです。ポート 80 でノード Web サービスを実行すると、ブラウザに移動して localhost と入力すると、自分のサイトが表示されます。ただし、別のマシンからサイトにアクセスしようとすると、タイムアウトになります。ただし、マシンを SSH および PING することはできます。node.js アプリケーションが Web サイトにサービスを提供するように ubuntu をセットアップするにはどうすればよいですか。ラップトップ(Windows 7)でホストし、別のラップトップがIPアドレスでサイトにアクセスすると、サイトは正常に機能します。

Apache や nginx を実行したくありません。とにかくこれを行うことはありますか?

    //---ExpressJS
    console.log('Initializing Express...');
    var express = require('express');
    var app = express();

    //---Middleware: Allows cross-domain requests (CORS)
    var allowCrossDomain = function(req, res, next){
      res.header('Access-Control-Allow-Origin', '*');
      res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
      res.header('Access-Control-Allow-Headers', 'Content-Type');
      next();
    }

    ///---MemoryStore
    //var MemoryStore = express.session.MemoryStore;

    //---App config
    app.configure(function() {
      var pub_dir = __dirname + '/public';
      app.set('views', __dirname + '/views');
      app.set('view engine', 'jade');
      app.set("trust proxy", true);
      app.use(express.favicon(__dirname+'/favicon.ico'));
      app.use(express.compress());
      app.use(express.bodyParser());
      app.use(express.cookieParser());
      app.use(express.session({secret: 'cogswell'}));
      app.use(express.methodOverride());
      app.use(allowCrossDomain);
      app.use(app.router);
      app.use(express.static(__dirname));
    });

    //---Start listening
    var port = 80;
    app.listen(port);
    console.log('Webservice started on port: '+port);

更新: ネットワークには大規模なファイアウォールがあります

4

2 に答える 2