關于暴露WordPress管理員登錄用戶名的解決辦法
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
當心wordpress的作者地址暴漏了你的登陸名
wordpress的多數主題,通常都會有一個作者的頁面。 而多數都是個人博客。所以作者頁面的地址,就可以看出登陸的名字。當然如果是管理員賬號的話,就多少有點風險。畢竟網站應該是越安全越好。下面我們來說說如何封閉暴露管理員登錄名的辦法;
第一種方式如下:批量替換文章內容的文本信息
將以下代碼扔到主題文件的functions.php函數文件里面,即可完美解決因為comment_class導致管理員登錄名泄漏的漏洞:
- //替換comment_class暴露的登錄名為指定輸出值——by?龍硯庭博客(http://loomob.com/)
- function?lyt_comment_class($lyt){
- ????$replace?=?array(
- ????????'comment-author-你的真實登錄名'?=>?'comment-author-新的輸出名',
- ????);
- ????$lyt?=?str_replace(array_keys($replace),?$replace,?$lyt);
- ????return?$lyt;
- }
- add_filter('comment_class',?'lyt_comment_class');
第二種方式如下: 去除函數部分class值
將comment_class()函數里輸出的comment-author-用戶登錄名這個class去掉,方法很簡單,只需要將以下代碼加入到主題文件的functions.php中,即可完美解決這個暴露管理員用戶名的漏洞!
/**
*(全網獨家)如何正確的避免你的 WordPress 管理員登錄用戶名被暴露
* http://www.ilxtx.com/further-hide-your-wordpress-admin-username.html
* 說明:直接去掉函數 comment_class() 和 body_class() 中輸出的 "comment-author-" 和 "author-"
*/
function lxtx_comment_body_class($content){
$pattern = "/(.*?)([^>]*)author-([^>]*)(.*?)/i";
$replacement = '$1$4';
$content = preg_replace($pattern, $replacement, $content);
return $content;
}
add_filter('comment_class', 'lxtx_comment_body_class');
add_filter('body_class', 'lxtx_comment_body_class');
第三種方式:修改user_nicename
字段中的名字
修改的方法
修改user_nicename
字段中的名字。
比如我的博客,作者的地址是?http://m.arunagnihotri.com/author/zhan/
可以看到,是域名 +?/author/?+ zhan 。
如果安裝wordpress博客的時候,填寫的用戶名是?zhan, 那么默認的情況,通過作者的地址,就可以找到 zhan(登陸的的名字)。
wordpress地址中如何隱藏隱藏登陸的名字
修改該數據庫?wp_users
+---------------------+---------------------+------+-----+---------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------------+---------------------+------+-----+---------------------+----------------+ | ID | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | user_login | varchar(60) | NO | MUL | | | | user_pass | varchar(255) | NO | | | | | user_nicename | varchar(50) | NO | MUL | | | | user_email | varchar(100) | NO | MUL | | | | user_url | varchar(100) | NO | | | | | user_registered | datetime | NO | | 0000-00-00 00:00:00 | | | user_activation_key | varchar(255) | NO | | | | | user_status | int(11) | NO | | 0 | | | display_name | varchar(250) | NO | | | | +---------------------+---------------------+------+-----+---------------------+----------------+
可以看到,wordpress中,關于用戶名字的有三個地方
1. user_login 這個是登陸的名字
2. user_nicename 這個是作者頁面中,url中的名字。 需要修改的就是這個地方的。
3. dispaly_name 顯示作者的名字
可以看到修改一下,?user_nicename
?就可以,防止登陸名的暴漏。
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!