2017-08-14 7 views
0

を削除した後、私は、これは、キャッシングの問題だと思ったが、私のサーバー上のすべてのコードの3完全に削除した後、私はまだ同じ問題に直面しています「が見つかりません」表示し続け私は以来、app.allをを使用して、私自身のキャッチして、すべてのルートをそのコードを交換したExpress.jsは、デフォルトのコード

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
    var err = new Error('Not Found'); 
    err.status = 404; 
    next(err); 
}); 

// error handler 
app.use(function(err, req, res, next) { 
    // set locals, only providing error in development 
    res.locals.message = err.message; 
    res.locals.error = req.app.get('env') === 'development' ? err : {}; 

    // render the error page 
    res.status(err.status || 500); 
    res.redirect('/'); 
}); 

:Generatorはapp.jsでファイルをデフォルトのエラー処理が付属していエクスプレス

app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); 
app.use(express.static(path.join(__dirname, 'public'))); 

app.use('/', index); 
app.use('/users', users); 

// catch 404 and forward to error handler (catch-all) 
app.all('*', function(req, res) { 
    res.render('index.html'); 
}); 

レンダリングステートメントが機能することに注意してください。私は単一のページアプリケーションを使用しており、index.htmlファイルにリダイレクトする必要があります。

これは実際にローカルで動作しますが、自分のサーバーでは動作しません。サーバーはNode.jsサーバーです。

404エラーのデフォルトメッセージは「見つかりません」です。このコードと404エラーメッセージを何回削除しても、自分のホームページにリダイレクトするのではなく、ブラウザに「Not Found」(Express.jsスタイル)が表示され続けます。

+1

問題は「マイサーバ」であるため、もう少し詳しく説明できます。しかし、一般的には、node.jsプロセスが再起動されていることと、可能であればサーバーのキャッシュをクリアしていることを確認する必要があります。 –

答えて

0

この質問には、ウェブホストの問題がありました。サーバはPhusion Passengerを使用し、Node.jsサーバのapp.jsを再起動する必要があります。

私は「TMP」という名前のフォルダの中にrestart.txtと呼ばれるサーバーのルートにファイルを作成するために必要な:私は手動でサーバーを再起動したい場合は、私が持っているだろう、その後

nano tmp/restart.txt 

を次のコマンドを実行します。

touch tmp/restart.txt 

これは、app.jsファイルを再起動します。