Как правильно скрыть / запретить доступ к wp-admin - PullRequest
2 голосов
/ 09 февраля 2012

Я занимаюсь этим вопросом некоторое время, я прочитал тонну статей и прочего, но я не смог найти место, которое показывало бы ПРАВИЛЬНЫЙ путь, стандартный, правильный, как бы вы это ни называли, запретить доступ к моему wp-admin или wp-login.php

На всех сайтах Wordpress, которые я вижу (хорошо сделанные), вы никогда ничего не увидите, если введете thesite.com/wp-admin

Как я мог видеть, один из способов сделать это - ограничить доступ к этой папке, создав файл .htaccess и ограничив по IP доступ к папке. Кажется, это самый «чистый» способ сделать. Что я не уверен в этом, так это то, что у меня есть динамический адрес, предоставленный моим провайдером, поэтому в определенный момент мой IP изменится, что заставит меня также изменить .htaccess на мой новый адрес, я не вижу это практично. Я также могу установить диапазон, но сделав это, я также разрешу доступ всем людям в пределах этого диапазона IP-адресов (например, другим клиентам моего интернет-провайдера).

Я тогда изо всех сил пытаюсь найти лучший / стандартный способ сделать это.

Кто-нибудь может мне помочь?

Спасибо

Ответы [ 3 ]

3 голосов
/ 09 февраля 2012

Из этого обсуждения Кодекса - этой статьи блога утверждает, что предлагает решение для переименования wp-admin.Я не проверял его, но, похоже, он работал на людей.

Однако,

У этого хака есть свои недостатки.

  • Ссылка «редактировать» в ваших сообщениях больше не будет работать.Вы можете удалить его из своей темы.
  • Ссылка администратора на боковой панели больше не будет работать.Вы можете удалить его из своей темы.
  • Стандартная ссылка для входа больше не будет работать.Вместо этого используйте закладку, так как она перенаправит вас обратно на скрытую страницу входа после завершения входа в систему.

В качестве альтернативы есть также возможность добавить Apache .htaccess диалоговое окно ввода пароля поверх входа в систему wp-admin.Это не будет скрывать это, но обеспечит еще один (хотя и раздражающий) уровень безопасности.

Мне не известен хороший способ .htaccess для ограничения доступа по IP, если у вас динамический IP,или хотите получить доступ к сайту из разных сетей.

0 голосов
/ 20 октября 2012

На * 1001 есть статья, как обезопасить wp-admin .Он также имеет свои недостатки, так как он перезаписывается при каждом обновлении WordPress, но он выполняет свою работу.

0 голосов
/ 09 февраля 2012

Я думаю, что можно было бы обойти описанные выше недостатки, добавив фильтры для admin_url (или, возможно, даже site_url, если вы просто проверите параметр $path).

Это в значительной степени не проверено, но, вероятно, будет хорошей отправной точкой:

function my_admin_url($url = null, $path = null, $blog_id = null) {

    // This our `wp-admin` replacement
    // probably wiser to use a filter/function for this, so that you can
    // do it dynamically by checking for the actual directory or something
    $custom_admin_dir = 'my-admin';

    // Remove filename.php
    if (!empty($path))
        $url = dirname($url);

    // Remove wp-admin
    $url = dirname($url);

    // Build up a new URL
    $url = trailingslashit(trailingslashit($url) . $custom_admin_dir) . $path;

    return $url;
}

add_filter('admin_url', 'my_admin_url', 10, 3);

Кроме того, если вы находитесь на сетевом сайте, вы можете принять во внимание параметр $blog_id и / или сделать то же самое для фильтра network_admin_url.

...