一个挺常用的需求:
1、www域名跳不带www的域名
2、不带www的域名跳www域名
为了SEO或者啥洁癖或者///,反正我喜欢不带www的域名,简单方便,节约资源。
在其他的环境中,我们可以用其他的web服务做跳转(如nginx、apache)。网上也很多,这么就不多说。Node.js中使用express的
res.redirect()
函数做301跳转。
express中,跳转到不带www的域名:
app.get('/*', function (req, res, next) { var haswww = req.headers.host.match(/^www\./) , url = ['http://', req.headers.host.slice(4), req.url].join(''); haswww ? res.redirect(301, url) : next(); });
express中,跳转到带www的域名:
app.get('/*', function (req, res, next) { var haswww = req.headers.host.match(/^www\./) , url = ['http://www.', req.headers.host, req.url].join(''); haswww ? next() : res.redirect(301, url); });