Wp_reDirect()在nginx中不起作用吗?

时间:2016-12-09 作者:Magnetic_dud

我制作了一个简单的重定向插件,其工作原理如下:

add_action(\'wp_head\', \'myredir\');
function myredir(){
    if ( is_404() ) {
        $Path=$_SERVER[\'REQUEST_URI\'];
        wp_redirect( \'http://old.example.com\'.$Path );
        exit();
    }
}
目标是将404错误重定向到旧域(我需要从旧网站进行手动迁移,这将需要很长时间)

在Apache上工作正常,在Nginx上不工作。如何修复插件?这个Redirection 插件工作正常,看起来使用了wp\\u重定向,所以我的代码有问题

1 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

它不应该在apache上也起作用。wp_head 进行重定向为时已晚,因为此时已经发送了一些输出,php不会发送重定向所需的http头。你需要抓住机会wp_loaded 或者在输出实际发生之前的任何其他挂钩。

相关推荐

Redirect htaccess

我需要帮助重定向我的页面。例如,我有网站https://example.com. 我需要将内容从https://example.com 到https://example.com/blog. 这不是问题,我通过更改主页URL来做到这一点。这很有效。但现在我需要添加来自旧的重定向https://example.com 到https://xmpl.com.我想用。htaccess,但这不起作用。你们能帮帮我吗?以下是我对此的一些尝试,但两者都不起作用。RewriteEngine On RewriteRu