如何使用ithemes安全插件更改WordPress登录URL(隐藏后端)后检索它



我使用iThemes-securitiy插件来更改wp-admin url和登录页面。

所以我以前的管理页面(https://www.example.com/wp-admin(现在给出HTTP 404错误(找不到文件(。不幸的是,我不记得我已将管理控制台 URL 设置为什么。我怎么能弄清楚呢?我可以通过SSH访问数据库和文件系统。

第 1 步:停用 iThemes 安全插件

由于您无法登录到 wp-admin 控制台,因此您需要 ssh 或 ftp 访问权限才能实现此目的。重命名插件文件夹(在早期安装中,此文件夹称为"更好的 wp-security"(

$ cd /www/wp-content/plugins
$ mv better-wp-security better-wp-security-disabled

(或者:使用 FTP 客户端进行重命名(

第 2 步:访问 WP 管理员

您现在可以再次访问 wp-admin。登录,并保持登录状态。(在WP管理控制台上保持浏览器打开状态(

步骤3:重新激活iThemes安全插件

  • 将插件文件夹重命名回其原始名称
  • 使用 wp-admin,再次激活插件(因为它被重命名,在步骤 2 中自动停用(
  • 请注意,系统会保留您之前的设置,因此从现在开始,将再次禁用直接访问 https://www.example.com/wp-admin。但是,当您打开会话(从步骤 2 开始(时,您可以修改设置

步骤 4:设置已知登录 slug

在 wp admin中,转到:

高级安全>(顶部选择器(> 隐藏后端>配置设置(按钮(

您可以查看和更改登录 slug。

在插件的实际版本中,您需要检查wp_options表并查看行option_name=itsec-storageoption_value里面将是 JSON 数据,在这个 json 数据中你可以找到hide-backend数组slug变量这就是你要找的。

要恢复您的自定义 wp-admin,请在 WordPress 根安装的.htaccess文件中搜索类似于以下内容的代码:

# Enable the hide backend feature - Security > Settings > Hide Login Area > Hide Backend
RewriteRule ^(/)?your-new-login/?$ /wp-login.php [QSA,L]
RewriteRule ^(/)?wp-register-php/?$ /wplogin?action=register [QSA,L]
# END iThemes Security - Do not modify or remove this line

如果可以访问数据库,则wp_options表具有"itsec_hide_backend"选项。 一个值(slug(是重命名的wp-admin。

作为一种解决方法,我已通过从备份还原站点来解决此问题。

iThemes 安全性似乎没有将其存储在文件系统上(即.htaccess(。从备份中恢复文件系统是不够的。 该设置也保存在数据库中的某个位置(数据库恢复后我又回来了(。

是的,现有的答案也对我有用。我去了目录/public_html/wp-content/plugins/better-wp-security,在"better-wp-security"文件夹中有一个名为"better-wp-security.php"的文件。我只是将其重命名为"disabled-better-wp-security",我能够通过默认的WordPress登录URL登录。

附言这是在iThemes插件的7.1.0版本上。

我使用从一位了不起的同事那里学到的不同技巧解决了这个问题。您可以通过在wp-login.php中添加两行来强制wordpress使用特定的URL。打开此文件并查找 wp-login 文件中应该已经存在的此行:

要求( 目录(文件( .'/wp-load.php' (;

紧接着输入接下来的两行:

update_option('siteurl', 'https://exampledomain.com/wp-admin' );
update_option('home', 'https://exampledomain.com/wp-admin' );

(其中"exampledomain.com"显然应该替换为您自己的域名( 现在WordPress仪表板应该再次处于 exampledomain.com/wp-admin 状态。

有时这还不够,您仍然必须通过以前面答案中提到的任何方式重命名它们来禁用 .htaccess 文件(有时也禁用负责的安全插件(。

编辑:这是一个临时黑客。在进行必要的更改后,不要忘记删除这些行。

如其他答案所述,隐藏的 URL 存储在数据库wp_options表中itsec-storage行的slug条目中。

如果您安装了WP CLI,则可以在一行命令中检索该子域:

wp option get itsec-storage | grep "'slug'"

如果不是WP CLI,如果您有权访问托管后端/SQL

SELECT * FROM `wp_options` where option_name = "itsec-storage";

在值数组中查找"slug">

最新更新