wordpress隐藏登陆地址

隐藏后台登陆地址是必要的一个操作,百度到基本都是类似于下面的代码

add_action('login_enqueue_scripts','login_protection');  
function login_protection(){  
    if($_GET['key'] != 'value')header('Location: https://baidu.com/');  
}

这段代码放到主题的functions.php文件末尾就行,访问 /wp-login.php登陆时就会跳转到设定的地址,加上?key=value才能正确到登陆地址。

但不知道怎么回事不行,不知道跟缓存是否有关系,于是用nginx实现了上面类似的功能:

set $auth 0;
if ( $request_filename ~ wp-login.php$ ){
set $auth "${auth}1";
}
if ( $args != "key=value" ) {
set $auth "${auth}1";
}
if ( $auth = "011" ){
rewrite /wp-login.php http://baidu.com? permanent;
}

其实就是做了个重定向,放到nginx配置文件server块就行,nginx不支持与或非逻辑运算就只能这样蛋疼的写,http://baidu.com? 加问号是去除参数。

不管怎么实现,登陆页面的忘记密码都会自动跳转到你设置的那个地址,除非你再单独处理这些操作,不过忘记密码也不是很重要,这样后台登陆地址会安全点。

  
BugHome版权所有丨转载请注明出处:https://minei.me/archives/218.html
  

2 comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注