Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 对于任何Wordpress',返回404;s源/rss_Php_Wordpress_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php 对于任何Wordpress',返回404;s源/rss

Php 对于任何Wordpress',返回404;s源/rss,php,wordpress,apache,.htaccess,mod-rewrite,Php,Wordpress,Apache,.htaccess,Mod Rewrite,如果url与“提要”:http://example.com/wordpress/?feed=rss2 我向.htacess添加了RedirectMatch^(.*)提要(.*)$[R=404],但它没有返回任何404错误 对于functions.php中的Wordpress,我可以使用以下代码: function fb_disable_feed() { include( get_query_template( '404' ) ); header('HTTP/1.0 404 Not

如果url与
“提要”
http://example.com/wordpress/?feed=rss2

我向.htacess添加了
RedirectMatch^(.*)提要(.*)$[R=404]
,但它没有返回任何404错误

对于functions.php中的Wordpress,我可以使用以下代码:

function fb_disable_feed() {
    include( get_query_template( '404' ) );
    header('HTTP/1.0 404 Not Found');
    exit; 
}
add_action('do_feed', 'fb_disable_feed', 1);
add_action('do_feed_rdf', 'fb_disable_feed', 1);
add_action('do_feed_rss', 'fb_disable_feed', 1);
add_action('do_feed_rss2', 'fb_disable_feed', 1);
add_action('do_feed_atom', 'fb_disable_feed', 1);
但它会重定向
http://example.com/wordpress/?feed=rss2
(301)至
http://example.com/wordpress/feed
然后才返回404错误


我需要那个
http://example.com/wordpress/?feed=rss2
将返回404错误并不会重定向到
http://example.com/wordpress/feed

您可以通过mod_重写规则来执行此操作,而不是使用WP PHP代码

将此规则作为主WP.htaccess中的第一条规则

RewriteEngine On

RewriteCond %{THE_REQUEST} feed [NC]
RewriteRule ^ - [L,R=404]