最近網友問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 功能失效。