WordPress模板插件定制

您现在的位置是:首页 > WordPress教程WordPress教程

如何设置WordPress安全防火墙

查看 WP集市 的更多文章WP集市 2025-08-27 【WordPress教程】 269人已围观

  1. 首先咱得明白,防火墙就是个看大门的,专门拦那些不怀好意的网络请求。WordPress本身挺结实,但架不住总有人想撬门,所以得加个自定义防护层。最简单一招是往主题的functions.php里塞代码,比如拦掉那些瞎扫描的爬虫:
add_action('init', 'block_bad_bots');
function block_bad_bots() {
    if (preg_match('/AhrefsBot|SemrushBot/', $_SERVER['HTTP_USER_AGENT'])) {
        wp_die('爬虫别来了,喝杯茶歇会儿吧', 403);
    }
}
  1. 接着搞登录保护。默认的wp-login.php谁都认得,改成隐蔽路径就像把钥匙藏地毯底下——虽然老套但管用。在.htaccess里加规则(注意先备份):
<FilesMatch "^login\.php$">
Order Deny,Allow
Deny from all
Allow from 192.168.1.1
</FilesMatch>
  1. 限制XML-RPC接口。这玩意儿有时候比大门还宽敞,黑客最爱从这儿撞库。直接关掉又可能影响手机APP,那就只留必要功能:
add_filter('xmlrpc_enabled', '__return_false');
add_filter('xmlrpc_methods', 'disable_xmlrpc_pingback');
function disable_xmlrpc_pingback($methods) {
    unset($methods['pingback.ping']);
    return $methods;
}
  1. 文件防护也不能落下。上传目录经常被塞木马,得禁止PHP执行。在网站根目录的.htaccess里添这么一段:
<Directory /wp-content/uploads/>
    <Files *.php>
        Deny from all
    </Files>
</Directory>
  1. 最后整个简易版WAF。用PHP检查可疑请求,比如带SQL注入特征的参数就直接掐断:
$bad_strings = array('union select', 'eval(', 'base64_decode');
foreach ($_GET as $input) {
    foreach ($bad_strings as $bad) {
        if (strpos($input, $bad) !== false) {
            header('HTTP/1.1 400 Bad Request');
            exit('参数咋不对劲呢?');
        }
    }
}

其实安全就是个修修补补的活儿,没有一劳永逸。记得每次改代码前备份,不然手滑了可能连自己都进不去。要是怕麻烦,直接装个Wordfence插件也行,但自己捣鼓更有成就感不是?

Tags:

WordPress模板插件定制

WP集市

V管理员
文章 723 篇 | 评论 0 次
最新文章