2016-04-03 7 views
0

Ben index.html dosyası var ve Gördüğünüz gibi bunodejs'de index.html için tercih nasıl kaldırılır? Benim kamu klasörde

router.get('/', function (req, res, next) { 
    // res.send('index.html'); 
    if (req.user) 
     res.redirect('home'); 
    else 
     res.redirect('login'); 
}); 

, ben index.html dosyasının porsiyon dışarı yorumladı gibi benim rota işleyicisi, ama yine de endeksi vermektedir nodejs ev dizinine yönlendirmek veya giriş yapmak yerine. public dizininden .html. Ancak, index.html dosyasını kaldırır/yeniden adlandırırsam, düzgün çalışır.

Yani, nodejs'i istek üzerine hizmet dizini dosyasına değil, rota işleyicisini çağırması için nasıl yapılandırabilirim?

cevap

1

Bu app.use siparişi kaynaklanmaktadır, daha önce

app.use('/', index); 
app.use(express.static(path.join(__dirname, 'public'))); 

sorunu çözer bu değişen

app.use(express.static(path.join(__dirname, 'public'))); 
app.use('/', index); 

oldu.

0

express.static() middleware, varsayılan dosya adını değiştirmenize izin veren bir index seçeneği içerir.

Ya amacýnýza, özelliği tamamen devre dışı bırakmak için:

app.use(express.static(path.join(__dirname, 'public'), { 
    index: false 
})); 
İlgili konular