前言/废话
wordpress的默认后台地址是example.com/wp-admin/
,进入后台最关键的就是要进入登录页,wordpress的登录页默认是/wp-login.php
。这就意味着所有了解wordpress的人都可以打开你的后台登录页面,这样的话非常容易给某些小学生一些可乘之机。
正文
wordpress改后台有两种方法,一种是使用插件,一种是直接对源代码进行修改
我个人不看好插件,感觉插件会拖慢站点的速度,插件修改的方法网络上也有很多,所以本文重点讲解修改源代码的方法
别看修改源代码听起来很吓人,但是做起来是很简单的事,毕竟是修改呢
警告
在进行任何危险操作前,务必对将要操作的文件进行备份!!!
思路
要实现禁止用户访问后台,说白了就是禁止用户访问wp-login.php
这个文件,这样一想就简单多了,只需要让用户无法访问或是禁止访问这个文件即可
常规方法
第一步,先将wp-login.php
重命名,命名为你喜欢的名字,不要修改后缀名。这里我将他命名为测试123.php
。
你可以再新建一个wp-login.php
,也可以让他保持不存在。这样当人们访问wp-admin
或者wp-login.php
的时候就会访问的你自己新建好的wp-login.php
或者是404页面
第二步,我们打开修改过文件名的登录文件,我这里是测试123.php
,大家根据实际修改
打开之后,利用编辑器进行搜索和替换(多数编辑的快捷键为ctrl f
)。什么?你说你的编辑器没有这个功能?我不信!Windows自带的记事本都有!
将文件内所有的wp-login.php
替换为你更改的文件名,我这里就替换为测试123.php
第三步,编辑站点根目录下的/wp-includes/general-template.php
,同样是用替换,将所有的wp-login.php
替换为你修改的文件名,我这里就更换为测试123.php
第四步,还是这个文件,搜索$login_url
这个变量,查看第一个结果,你会看到以下内容
function wp_login_url( $redirect = '', $force_reauth = false ) {
$login_url = site_url( '你修改的名字.php', 'login' );
将这里你修改的名字.php
修改成你希望用户访问wp-admin
的时候跳转到哪,你可以设置成index.php
,也可以保持原来的wp-login.php
,但是不能不改,不然你前面的修改就白费了
修改完成,此时请访问你修改后的文件进行登录!
常规方法会出现的一些问题
这些内容翻遍互联网几乎不会有人告诉你,经过我的亲身体验我发现了以下的问题
经过wordpress的更新迭代,在wordpress更新时会覆盖原来的登录文件
经过wordpress的更新迭代,在wordpress更新时会覆盖修改好的文件,特别是使用自动更新的小伙伴,wordpress自动更新之后,原来修改的文件全部被覆盖成原来的,需要每次更新后都去重新修改一下这些文件!
有时候超时登录之类控制台内跳转的登录,会跳转到你修改过的地址
有时候写文章时超时了,弹出提示框让你登录,提示框的内容却是你设置好的内容,而不是你设置的登录页。这种情况使用f12修改提示框的地址即可
Wordpress注册页重定向地址暴露自定义后台地址(即使站点禁止注册)
这是最致命的一点!很多人根据网上的教程修改,但是仍然会被别人找到后台的地址,正式因为此。
访问根目录下/wp-signup.php
会自动跳转到正确的后台地址,这是因为什么相信聪明的大家已经会举一反三访问一下就知道了。所以大家记得使用上面讲过的方法一并将此bug修复。
不那么常规的偷懒方法
该方法全网仅此一篇。阅读此方法前,建议先阅读常规方法,也建议将该方法与常规方法一起使用。
这个神奇的方法就是——重定向!
直接将访问正确地址的请求重定向,这样别人就无法访问登录页,为原来的wp-login.php也设置一个,也可以解决更新换代的问题。当然这样的缺点也显而易见,每次登录的时候都需要手动关闭这个重定向。
这里以宝塔面板为例,其他方法可自行搜索“nginx重定向”等
相关配置如下
代码语言:javascript复制#REWRITE-START
rewrite ^/wp-login.php(.*) https://www.alongw.cn/110 redirect;
#REWRITE-END
嘿嘿!这个方法是不是又聪明又偷懒!但是这个方法的缺点刚刚也说了每次都要开关也容易让浏览器产生缓存,每次都要清理。此方法同样可针对wp-signup.php
。
需要折腾或者钞能力的离谱方法
该方法全网仅此一篇,但是需要折腾或者需要使用钞能力。这个方法特别的离谱,但是我本人正是在同时使用这三种结合
第一步,使用常规方法修改后台地址
第二步,使用重定向使wp-login.php
与wp-signup.php
禁止访问(你也可以直接用现在这种方法)
第三步,配置防火墙。将真实的后台地址拉黑。这里使用的是宝塔面板的Nginx防火墙企业版。你也可以自己折腾,具体方法请在互联网上搜索。
在防火墙的后台页面,任意选择违禁词拦截、URL关键词拦截、URL黑名单、URL白名单等任意一功能即可,可设置白名单ip,白名单中设置自己的ip。
全局拉黑该地址
将自己的ip设置问白名单ip
操作完成
结尾
这些设置说白了其实都是自欺欺人,防君子不防小人,如果真的被盯上人家绝对有一百万种方法针对你,也不仅针对于后台,可能会直接对站点进行ddos攻击。修改后台地址,最后防住的是自己,麻烦的也是自己。