Redirect Meteor Iron路由器:如何使用双斜杠处理重定向url
我已从旧网站重定向到新网站。新网站是用流星和铁路由器建立的。重定向的url为: 正如您所看到的,这个url中有一个双斜杠。 由于某些原因,我无法使用旧网站的htaccess文件来修改regex。 所以我的最后一个选择是用铁路由器处理这种路由 你知道如何用铁路由器管理这种路由吗 更新: 这里是路由器配置示例(所有路由都遵循相同的配置): 路由器配置({ layoutTemplate:“布局”, loadingTemplate:“正在加载” }); Router.map(函数(){ this.route(“路由名称”{ 路径:“/”, 模板:“模板名称”, waitOn:函数(){ 返回流星。订阅(“列表”); } }); //捕获未处理路由的所有路由 此.route(“未找到”{ 路径:“*” });Redirect Meteor Iron路由器:如何使用双斜杠处理重定向url,redirect,meteor,iron-router,Redirect,Meteor,Iron Router,我已从旧网站重定向到新网站。新网站是用流星和铁路由器建立的。重定向的url为: 正如您所看到的,这个url中有一个双斜杠。 由于某些原因,我无法使用旧网站的htaccess文件来修改regex。 所以我的最后一个选择是用铁路由器处理这种路由 你知道如何用铁路由器管理这种路由吗 更新: 这里是路由器配置示例(所有路由都遵循相同的配置): 路由器配置({ layoutTemplate:“布局”, loadingTemplate:“正在加载” }); Router.map(函数(){ this.ro
提前谢谢。我不确定这样做是否正确,但它奏效了
Template.mainTemplate.rendered = function() {
if(
window.location.pathname === "//url-example-1"
|| window.location.pathname === "//url-example-2"
|| window.location.pathname === "//url-etc"
){ Router.go("home") }
};
我几乎按照@Carl B.的建议做了同样的事情,但还是使用了Router.go(“Home”),我不知道为什么它对我不起作用,我使用了location.href javascript方法
Meteor.startup(function () {
Template.Home.rendered = function(){
if(window.location.pathname === "//"){
location.href = "/";
}
}
}
我知道这是一个老帖子,但万一有人遇到同样的问题 我也有同样的问题,解决办法是找出为什么会有双斜杠
原因是:当我设置重定向url时,在重定向url的末尾有一个额外的斜杠。例如:我将此更改为,然后就没有问题了。您尝试在路由器中设置了哪些路径。map()函数?谢谢你的回复。我用我使用的配置模型更新了答案。事实上,我正在寻找一种方法,用双斜杠将url重定向到“notfound”路由。只是为了确保,使用
/%2F
作为路径不匹配/
?不幸的是,/%2F、/%、/%*、*/%不匹配//我建议发布内部iron路由器代码,该代码进行实际匹配(通过使用浏览器的调试器进入该代码或在github上浏览源代码来查找).一旦你发现我们可以直接测试它并找出如何强制匹配。
Meteor.startup(function () {
Template.Home.rendered = function(){
if(window.location.pathname === "//"){
location.href = "/";
}
}
}