从Wordpress迁移到Ghost时301重定向

时间:2014-01-22 20:10:25

标签: wordpress .htaccess redirect ghost-blog

我想将我的WP博客迁移到ghost,永久链接有相同的slug(/blogWP.com/title-articleblogGhost.com/title-article),但我仍然有像blog.com/category这样的页面来重定向。

有没有办法在Ghost中进行301重定向,就像在.htaccess文件中那样?

谢谢!

3 个答案:

答案 0 :(得分:1)

可以直接通过ghost本身重定向,但是你需要改变核心。虽然我不确定它是完美或正确的方式。

打开core/server/errorHandling.js

找到这一行:

error404: function (req, res, next) {

在下面添加:

res.status(301); 
res.set({'Location': 'http://your-new-wordpress-blog-url'+req.url});
res.send('301','Not found');

这样,我将重定向到我的wordpress'新域(示例中为http://your-new-wordpress-blog-url),而不是showind 404s。

这样,www.ghost.url/not-a-valid-page将重定向到http://your-new-wordpress-blog-url/not-a-valid-page,而不是显示Ghost的404页面。

p.s:这会重定向,但我并不是100%确定标题是正确的,如果有人会澄清,我会很感激。

答案 1 :(得分:0)

对不起,但目前无法使用Ghost进行重定向。

执行重定向的最佳方法是使用代理服务器(推荐)并在那里进行重定向。对于Apache,您可以使用.htaccess个文件,nginx提供HttpRewriteModule

答案 2 :(得分:0)

我的幽灵博客是与NGINX一起运行的子目录/blog/。 我需要将旧的wordpress网址 / blog / category / post-title 重定向到 / blog / post-title

/blog/ghost/../blog/tag/../blog/author/../blog/post-title/amp/除外。

所以我带来了重写规则: rewrite ^/blog/(?:(?!ghost|tag|author).).*/(?:(?!amp))(.+)$ /blog/$1 permanent;