wordpress如何屏蔽wp-json(禁用REST API)

时间:2022-05-03
本文章向大家介绍wordpress如何屏蔽wp-json(禁用REST API),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

  最近网友问ytkah怎么在网站日志文件中发现蜘蛛爬行了很多次的/wp-json/目录,在robots文件中disallow掉了爬虫还是访问了那个目录,能不能直接在程序中直接改呢?通过查询相关文档发现WordPress 4.4版本以后增加了一个REST API功能, 通过REST API可以很轻松的获取网站的数据,但是这个功能并不是每个网站都需要的,或者说有需要但并不希望它在head里面输出,那么可以禁用REST API或者说移除head里面wp-json链接。

// 屏蔽 REST API
add_filter('rest_enabled', '__return_false');
add_filter('rest_jsonp_enabled', '__return_false');

// 移除头部 wp-json 标签和 HTTP header 中的 link 
remove_action('wp_head', 'rest_output_link_wp_head', 10 );
remove_action('template_redirect', 'rest_output_link_header', 11 );

  另外需要注意的是,屏蔽 REST API 会直接导致 文章 Emebed 功能失效。