我用 node.js 和 express 编写了一个网站。现在我将 lighttpd 配置为使用带有子目录的 node.js 服务器:
$HTTP["url"] =~ "^/app/" {
proxy.server = ( "" => ( (
"host" => "127.0.0.1",
"port" => 3000
) )
)
}
当我打开 http://localhost/app/
时出现错误 404,因为我写了如下内容:
app.get('/', function (req, res){
res.render('index');
});
有没有更好的方法来修改这些行,例如:
var relPath = '/app';
app.get(relPath + '/', function (req, res){
res.render('index');
});
?
最佳答案
正如 Ryan 评论的那样,解决方案是:
app.use('/app', app.router);
如果您使用例如express.static 或 express.favicon 你必须告诉 app.use 路径:
app.use('/app', express.favicon(__dirname + '/public/images/favicon.ico'));
app.use('/app', express.static(__dirname + '/public'));
请记住在您在 html 中设置的每个内部链接之前写上“/app”。
关于node.js - 如何处理 node.js/express 中的相对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11379482/