wordpress将wp-login.php切换到login.php的方法
我使用的主机ixwebhosting,这几天说遭到什么攻击,还在修复中,屏蔽掉wp-login.php的功能,建议切换成login.php之类的登录。
想了想,wordpress作为一个博客的软件,被大多数人所青睐,肯定也受黑客青睐,喜欢来找漏洞。
那为了安全起见,我们当然可以将登录wp-login.php切换成login.php,这样可以安全一点。
实现方法步骤,简单记录如下:
1.在网站根目录文件.htaccess重定向路径,.htaccess原来的内容是:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
在行“RewriteBase /”之后增加一行:
RewriteRule ^login$ wp-login.php
增加之后的.htaccess内容如下:(粗体部分是增加的内容)
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^login$ wp-login.php
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
2.将wp-login.php改名字为login.php
我这里修改完之后不想保留wp-login.php的功能,所以直接改名字。
3.在function.php中增加一个函数,增加的内容是:
add_filter('site_url', 'wplogin_filter', 10, 3);
function wplogin_filter( $url, $path, $orig_scheme )
{
$old = array( "/(wp-login\.php)/");
$new = array( "login\.php");
return preg_replace( $old, $new, $url, 1);
}
这样每次有人调用到wp-login.php时都会切换到login.php上。
4.注意
查看下目录/wp-include 和/wp-admin,如果你有些地方调用到wp-login.php的话,也要修改下你个人的链接,你可以选择使用site_url('wp-login.php?[and the actions]');去替换你的链接。
5.修改主题上登录路径
由于我所使用的主题Hcms 1.2版本,右上角有一个登录的链接,修改该链接的路径。
修改主题下header.php,找到wp-login.php修改成login.php