2012-09-16 79 views
0

我在express.js中使用了node.js。这里是我的公共目录结构:Node.js - 动态禁止生产模式下的一些公共路径

public/ 
    js/ 
    css/ 
    images/ 
    built/ 
     main-built.js 
     main-built.css 
    index.html 
    dev.html 

index.html链接脚本js/css/,而dev.html链接main-built.jsmain-built.css。当应用程序作为生产模式启动时,如何动态禁止public/js/*,css/*dev.html)下的某些路径?

+0

为什么如果他们不公开? –

+0

它只是为了方便,因为我可以在开发模式下使用它们。 –

回答

2

如果你使用Express,你可以用一小块中间件来阻止它们。

app.configure(function() { 
    app.use(function(req, res, next) { 
    if(process.env.NODE_ENV === 'production') { 
     if(/* check req.url for blocked content */) { 
     res.send('Access Denied'); 
     } 
    } 
    else { 
     // Not in production, proceed to next handler. 
     next(); 
    } 
    }); 
    app.use(express.static(__dirname + '/public')); 
});