使用 SailsJs 时的 301 重定向
301 redirect when using SailsJs
情况:升级基本 HTML 的旧站点以使用 SailsJS。旧站点有 .html 扩展名,并且在这些结果的搜索引擎中排名很高。因此,我想将所有传入请求从他们的旧 URL(.html 扩展名)路由到他们通过 sails(无扩展名)生成的新结果。
最好的方法似乎是 301 重定向,但我不确定使用基于 SailsJS 的服务器是否是最佳实践。
www.blah.com/blah2.xml => www.blah.com/blah2.
您应该使用 Sails custom routes。
将视图文件复制到 views
文件夹中。将其扩展名替换为 ejs
.
您现在可以在 config/routes.js
文件中添加要使用的每条路线,例如:
module.exports = {
'GET /blah2.html': { view: 'blah2' },
...
};
出于 SEO 目的,您还必须使用 HTTP 状态代码来处理此问题。您应该使用自定义路由 (config/routes.js) 并使用以下代码制作控制器:
module.exports = {
// this is you action name
redirect: function(req, res) {
res.status(301);
return res.view('blah2');
}
}
您还应该在视图文件夹中创建视图并设置通过控制器的路由。
我认为您正在寻找的是 sails 中的 redirect() 函数。因为就 SEO 而言,301(永久)重定向是最佳做法。
这里有一个示例,说明如何在配置/routes.js 文件中使用它:
'/blah2.xml': (req,res)=>{ return res.redirect(301,'/blah2') },
有关详细信息,请参阅 sails.js 文档:
https://sailsjs.com/documentation/reference/response-res/res-redirect
情况:升级基本 HTML 的旧站点以使用 SailsJS。旧站点有 .html 扩展名,并且在这些结果的搜索引擎中排名很高。因此,我想将所有传入请求从他们的旧 URL(.html 扩展名)路由到他们通过 sails(无扩展名)生成的新结果。
最好的方法似乎是 301 重定向,但我不确定使用基于 SailsJS 的服务器是否是最佳实践。
www.blah.com/blah2.xml => www.blah.com/blah2.
您应该使用 Sails custom routes。
将视图文件复制到 views
文件夹中。将其扩展名替换为 ejs
.
您现在可以在 config/routes.js
文件中添加要使用的每条路线,例如:
module.exports = {
'GET /blah2.html': { view: 'blah2' },
...
};
出于 SEO 目的,您还必须使用 HTTP 状态代码来处理此问题。您应该使用自定义路由 (config/routes.js) 并使用以下代码制作控制器:
module.exports = {
// this is you action name
redirect: function(req, res) {
res.status(301);
return res.view('blah2');
}
}
您还应该在视图文件夹中创建视图并设置通过控制器的路由。
我认为您正在寻找的是 sails 中的 redirect() 函数。因为就 SEO 而言,301(永久)重定向是最佳做法。
这里有一个示例,说明如何在配置/routes.js 文件中使用它:
'/blah2.xml': (req,res)=>{ return res.redirect(301,'/blah2') },
有关详细信息,请参阅 sails.js 文档: https://sailsjs.com/documentation/reference/response-res/res-redirect