gpt4 book ai didi

javascript - Node.js 基于子域的重定向样式和资源文件夹

转载 作者:行者123 更新时间:2023-12-03 11:30:35 25 4
gpt4 key购买 nike

我有一个创建本地服务器的 server.js 文件。

//server.js
var connect = require('connect');
connect.createServer(
connect.static(__dirname)
).listen(8080);

它使用 Node 包 connect 在我的 web 应用程序所在的同一目录名上启动本地主机。我想扩展此代码,以便我可以拥有一个子域。

当我放置地址 localhost:8080/companyA 时,我想要链接:

<link rel="stylesheet" href="resources/css/bootstrap.css" type="text/css" /> 

重定向至:

<link rel="stylesheet" href="companyA/css/bootstrap.css" type="text/css" />

所以继续。我希望我的网站根据子域进行样式设置。仅资源文件夹将被重定向。

希望有人能帮忙。谢谢

注意:我想保持索引文件简单,而不使用模板或标记语言。基本上我应该能够使用一些路由规则来实现这一点。

最佳答案

您可以使用 Jade 标记语言来处理重定向。例如

app.get('/:company/path', function(req, res){
var subdomain = req.params.company;
res.render('myview', {subd: subdomain});
});

现在在 View 中,myview.jade

link(rel='stylesheet', href=#{subd}/css/bootstrqp.css, type="text/css")

另一种选择是仅在路由中完成重定向

app.get('/:company/css/:file', function(req, res){
var options = {
root: __dirname + '/public/' + req.params.company, // wherever your css files are located
dotfiles: 'deny',
index: false
headers: {
'x-timestamp': Date.now(),
'x-sent': true
};
};

res.sendFile(req.params.file, options, function(err){
// css files sent. hooray!
});

});

关于javascript - Node.js 基于子域的重定向样式和资源文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26744807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com