禁止WordPress wp-login.php 登录页面防止被破解登录

如果我们有在使用WordPress程序的时候你应该知道,我们直接打开 “wp-admin”或者 “wp-login.php” 目录和文件是直接可以进入后台登入入口的。但是这样也是有隐患的,比如有被破解机器人进行猜测密码,一来可能导致我们账户安全泄露,或者是提高我们的服务器的负载。

禁止WordPress wp-login.php 登录页面防止被破解登录

那我们常用的办法就是禁止这个目录入口,将加上参数才可以登录。

我们较多的采用方法包括:

/**
 * WordPress 隐藏后台登录地址
 * https://www.cnwper.com/disable-wp-login.html
 */
add_action('login_enqueue_scripts', 'lxtx_login_protection');
function lxtx_login_protection(){
    if( empty($_GET['theme']) || ($_GET['theme'] != 'cnwper') ){
        $url = home_url();
        header('Location: $url');
    }
}

或者

/**
 * WordPress 隐藏后台登录地址
 * https://www.cnwper.com/disable-wp-login.html
 */
add_action('login_enqueue_scripts', 'lxtx_login_protection');
function lxtx_login_protection(){
    if( empty($_GET['theme']) || ($_GET['theme'] != 'cnwper') ){
        $url = home_url();
        echo "<script language='javascript' type='text/javascript'>window.location.href='$url';</script>";
    }
}

我们随便选择哪个都相似的,然后我们用这样方式登入。

http://你的域名/wp-login.php?theme=cnwper

如果我们直接输入开始提到的wp-login.php是无法打开的。

如果我们确保安全也可以彻底的禁止掉wp-login.php入口。

/**
 * WordPress 彻底禁止WP-LOGIN.PHP
 * https://www.cnwper.com/disable-wp-login.html
 */
add_action('init','disable_wplogin_page');
function disable_wplogin_page(){
    global $pagenow;
    if( 'wp-login.php' == $pagenow && !is_user_logged_in() ) {
        $url = home_url();
        wp_redirect($url);
        exit();
    }
}

一般来说,我们设置复杂的密码,后再用开始的加上入口后缀即可。

投票 post
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享