WordPress 完全禁用 REST API(最新版)

全国高校招代理

网课代理平台,全国高校招代理,抢先即是赚到

¥100+10 统一开户价

特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系!

WordPress 完全禁用 REST API(最新版)

毋庸置疑 WordPress 算是当前比较好用的 PHP 程序,基本上个人博客、企业网站,小型商务网站都可以使用到。而且 WordPress 官方的更新、第三方的插件主题丰富,让这个程序变得越来越丰富多样,但是随着不断的升级功能,也会增加程序的负担和不安全因素。

比如 WordPress 从 4.4 版本开始新增的 JSON REST API 功能,通过这个 REST API 可以很轻松的获取网站的数据,可应用于其他网站、手机 APP 或小程序等;但对于一般的网站是没有需要的,反而会拖累网站的速度,而且 REST API 采用 GET 请求方式,这就为 DDOS 攻击提供了一个新的攻击途径,所以我们应尽可能的禁止掉这些不必要的功能需求,并且去掉 head 里面输出 wp-json 链接。在此也说下查看 WP JSON REST API 是否开启的方法:http://域名/wp-json/,若输出数据则是开启状态。

因此如果我们想兼容所有版本的 WordPress,我们可以直接使用插件Disable REST APIDisable WP REST API来完全禁用 REST API;但我更倾向纯代码的方法,在这里就介绍下代码版兼容所有 WordPress 版本的完全禁用 REST API 或者说移除 head 里面 wp-json 链接的方法。

对于 WP 4.7 以上版本,通过rest_api_init这个钩子来禁用 REST API 的方法,大家也可以尝试并改造下。

/**
 * WordPress完全禁用REST API(最新版)
 */
/*禁用未登录的用户*/
add_filter( 'rest_api_init', 'lxtx_rest_only_for_authorized_users', 99 );
function lxtx_rest_only_for_authorized_users($wp_rest_server){
    if ( !is_user_logged_in() ) {
        wp_die('非法操作!');
    }
}

未经允许不得转载:作者:浮夸小生。, 转载或复制请以 超链接形式 并注明出处 半粒糖博客
原文地址:《WordPress 完全禁用 REST API(最新版)》 发布于2019-10-06

分享到:
赞(0) 打赏
广告

评论 抢沙发

1 + 2 =


WordPress 完全禁用 REST API(最新版)

长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.0主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册