簡體   English   中英

轉發的Localhost上的Node.js Express服務器-無響應

[英]Node.js Express Server on Forwarded Localhost - Not Responding

我是Node.js的新手。 從遵循Sahat Yalkabov的創建Node.js Express + React.js應用程序教程開始。

我使用SSH(PUTTY)連接到服務器,並將端口3000轉發到localhost:3000 但是,當我嘗試使用瀏覽器連接到服務器時,它沒有響應,瀏覽器僅顯示waiting for localhost消息。

我以前運行過express命令,並且它們的默認項目確實顯示在我的瀏覽器中,所以這不是防火牆。

這是server.js

var express = require('express');
var path = require('path');
var logger = require('morgan');
var bodyParser = require('body-parser');

// Server-side React rendering
var swig  = require('swig');
var React = require('react');
var ReactDOM = require('react-dom/server');
var Router = require('react-router');
var RoutingContext = Router.RoutingContext;
var routes = require('./app/routes');

var app = express();

app.set('port', process.env.PORT || 3000);
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(express.static(path.join(__dirname, 'public')));

// Server-side React rendering
app.use(function(req, res) {
  Router.match({ routes: routes, location: req.url }, function(err, redirectLocation, renderProps) {
    if (err) {
      res.send(500, err.message)
    } else if (redirectLocation) {
      res.redirect(302, redirectLocation.pathname + redirectLocation.search)
    } else if (renderProps) {
      var html = ReactDOM.renderToString(<RoutingContext {...renderProps} />);
      var page = swig.renderFile('views/index.html', { html: html });
      res.send(200, page);
    } else {
      res.send(404, 'Page Not Found')
    }
  });
});

app.listen(app.get('port'), function() {
  console.log('Express server listening on port ' + app.get('port'));
});

為了運行服務器,我使用了2個終端,一個運行gulp ,另一個運行npm run watch ,如所述教程所述。

第一次運行Node.js時,我真的對這一切感到陌生。 任何幫助將非常感激!

編輯:添加一個Git倉庫與我的項目, 在這里

我認為您應該只運行npm run watch命令。 終端顯示Express server listening on port 3000 ,請在瀏覽器中打開http://localhost:3000/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM