神即道 道法自然 如来

WordPress安全加强:更换登录及后台控制面板地址

新安装Wordpress,以前的一些经历让我习惯性的考虑安全,决定对Wordpress安全进行简单升级。

注:操作任何文件时,请备份此文件!

第一步:更改登录文件(wp-login.php)

找到安装目录下wp-login.php并打开,使用文本编辑器全局替换 “wp-login.php” 为 “example.php”

注:example.php为未来登录文件,更换example.php为你期望的文件名

进入wp-incudes目录,找到并打开”general-template.php”,同上步操作,全局替换 “wp-login.php” 为 “example.php”

第二步:更改控制台(wp-admin)目录

打开安装目录下的”config.php”配置文件,在最上部加入以下代码:

define('WP_ADMIN_DIR', 'youradmindir');#请换成你希望的控制台目录,以下同
define('ADMIN_COOKIE_PATH','/'.WP_ADMIN_DIR);

打开当前模板目录中”functions.php”函数集文件,在最上部加入以下代码:

if(!function_exists('replace_wpadmin_filter')){
    /**
     * 替换链接中的wp-admin默认管理路径为WP_ADMIN_DIR[youradmindir]路径
     * @param $url
     * @param $path
     * @param $orig_scheme
     * @return mixed
     */
    function replace_wpadmin_filter( $url, $path, $orig_scheme )
    {
        $old = array("/(wp-admin)/");
        $admin_dir = WP_ADMIN_DIR;
        $new = array($admin_dir);
        $result = preg_replace( $old, $new, $url, 1);
        return $result;
    }
}
add_filter('site_url', 'replace_wpadmin_filter', 10, 3);

代码解释:替换站点链接路径中的wp-admi为youradmindir

第三步:修改Nginx配置文件,加入:

rewrite ^/youradmindir/(.*) /wp-admin/$1?$args last;

重启nginx服务器。

以上,已经能使用 http://simple.com/exmaple.php登录系统,并自动跳转到http://*.*.com/youradmindir/ 管理控制台。

第四步:继续加强安全,改变 访问”wp-admin”目录时跳转到站点主页:

在当前主题下的”functions.php”刚才添加函数下面添加以下代码:

if(!function_exists('redirect_wp_admin')){
    /**
     * 重定向wp-admin目录到首页
     */
    function redirect_wp_admin()
    {
        $redirect_to = $_SERVER['REQUEST_URI'];
        if(count($_REQUEST)> 0 && array_key_exists('redirect_to', $_REQUEST))
        {
            $redirect_to = $_REQUEST['redirect_to'];
            $check_wp_admin = stristr($redirect_to, 'wp-admin');

            if($check_wp_admin)
            {
                wp_safe_redirect('/');
            }
        }
    }
}
add_action('login_form','redirect_wp_admin');

代码解释:当访问路径中存在 wp-admin 时自动跳转到站点首页

OK,你觉得你的Wordpress安全一些了吗?

点赞

发表评论