如何防止404个错误和“错误”URL的自动重定向?

时间:2012-11-08 作者:Mazatec

Wordpress有一个功能,如果它发现你的URL写错了,它会自动重定向你的URL。这里有一个例子:我有一个页面叫做my-page

如果我转到:

www.mysite.com/something/my-page/
它会立即将我重定向到

www.mysite.com/my-page/
因为第一个URL中不存在任何内容。

如果输入了不正确的URL,如何关闭此功能,而只获取404?

3 个回复
最合适的回答,由SO网友:Mazatec 整理而成

这对我很有用:

remove_action(\'template_redirect\', \'redirect_canonical\');

SO网友:Mike P.

正如Ash所建议的,您可以使用以下代码关闭该功能:

remove_action(\'template_redirect\', \'redirect_canonical\');
在canonical中查看redirect\\u canonical函数。php,看起来您还可以使用自己的过滤器修改行为。

在redirect\\u canonical()函数的末尾,有一个用于筛选最终答案的调用:

$redirect_url = apply_filters( \'redirect_canonical\', $redirect_url, $requested_url );
因此,您可以编写自己的过滤器来修改最终重定向,或者根据输入返回null来停止重定向,因此turning off 特定URL或URL子集的功能。

SO网友:Ian Mackinnon

通过在代码中添加以下行(例如functions.php):

add_filter(\'do_redirect_guess_404_permalink\', \'__return_false\');
Wordpress代码中的相关功能包括redirect_canonicalredirect_guess_404_permalink 在里面wp-includes/canonical.php.

结束

相关推荐

Redirect Loops Problems

我不知道到底发生了什么事。昨天,它工作得很好。我回忆起今天早上我所做的让我陷入这种困境的事情。昨天,我刚刚在PhpMyAdmin编辑帖子。好吧,不管怎样,我禁用了所有插件,并找出什么不起作用。这是插件自定义永久链接。My problem is that I have about hundred videos in youtube, and each video is given with Custom Permalink set. I want to keep the Custom Permalink P