Урок 166. Как изменить адрес админки в WordPress?
Приветствую всех читателей моего блога!
Довольно часто люди задаются вопросом: "Как изменить адрес входа в админку WordPress". По-умолчанию адрес входа у всех одинаковый, и выглядит он таким вот образом: http://site.ru/wp-admin. Так вот, хоть я в этом ничего такого не вижу, о чем и писал в этой статье, но есть множество людей, не разделяющих моего мнения, которые стремятся максимальным количеством способов обезопасить свой блог. Для них и написана данная статья. Итак, весь процесс состоит всего лишь из редактирования файла .htaccess. Напомню, что данный файл отвечает за правильную настройку сервера. Подробнее о нем читайте в отдельной статье, ссылка дана выше.
Можно также поменять путь к админке через плагин iThemes Security. Пожалуй, это лучший плагин для защиты WP, о нем мы еще поговорим с Вами. К сожалению для большинства, этот плагин на английском языке, и имеет сотни настроек. Возможно, я займусь переводом плагина.
Так вот, если Вы поставили этот плагин, Вам необходимо будет перейти ко вкладке: "Hide Login Area". А там уже установить флажок "Enable", и откроется дополнительное поле, в которое Вы сможете вписать любое название. Например, password. После чего, Вам достаточно будет перейти по адресу: http://site.ru/password, и Вы попадете в админку. Для наглядности прикладываю скрин:
Теперь выйдите из админки. Причем не просто, а именно нажав на кнопку "Выйти". Попробуйте в адресной строке прописать http://site.ru/wp-admin. Так, как Вы раньше в админку заходили. И теперь Вы обнаружите, что по этому адресу выдается ошибка 404.
Напишите теперь http://site.ru/password. И сразу же Вас перекинет в админку. Вот так и работает данный плагин. Я предлагаю сделать тоже самое, только с помощью файла .htaccess. Не люблю я плагины, вот и все. Давайте приступим.
Зайдите, как всегда, в корень Вашего сайта, там будет лежать файлик .htaccess. Можете редактировать его напрямую через файловый менеджер хостинга. Я тут узнал, что многие так и делают. Мне же нравится по старинке - запускать программу FileZilla, кидать себе на рабочий стол нужный файл, и редактировать его.
Более продвинутые пользователи используют ftp-протокол прямо в своих редакторах. Знаю, что CodeLobster (редактор) с этим прекрасно справляется.
Так, немного отступили от темы. Если Вы делаете как и я - скидываете файлик себе на компьютер, то, возможно, перед Вами встанет вопрос: "Как этот файл открыть?". И чем вообще это можно сделать. Ответ прост - любым редактором. Хоть стандартным блокнотом, хоть notepad++, хоть любым другим, который у Вас установлен.
После того, как файл открыли, Вы уже увидите в нем некий код. Советую прочитать статью про .htaccess, ссылку на которую я давал в самом начале, дабы понимать что вообще там написано.
Добавляем в самый верх файла следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^adminka/?$ /wp-login.php?secretka [R,L] RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^adminka/?$ /wp-login.php?secretka&redirect_to=/wp-admin/ [R,L] RewriteRule ^adminka/?$ /wp-admin/?secretka [R,L] RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php RewriteCond %{HTTP_REFERER} !^(.*)site.ru/wp-admin RewriteCond %{HTTP_REFERER} !^(.*)site.ru/wp-login\.php RewriteCond %{HTTP_REFERER} !^(.*)site.ru/adminka RewriteCond %{QUERY_STRING} !^secretka RewriteCond %{QUERY_STRING} !^action=logout RewriteCond %{QUERY_STRING} !^action=rp RewriteCond %{QUERY_STRING} !^action=postpass RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L] RewriteCond %{QUERY_STRING} ^loggedout=true RewriteRule ^.*$ /wp-login.php?secretka [R,L] </IfModule> |
Теперь внесем необходимые правки. Здесь необходимо изменить три значения:
- adminka - вместо данного значения указываем любое, какое хотим. Соответственно, админка будет открываться именно по названию, которое Вы здесь впишите. Будет выглядеть это так: site.ru/adminka. Рекомендую вставить любое слово, не связанное со словом "админ".
- site.ru - здесь ясно, указываем адрес Вашего сайта. В моем примере это wpguru.ru. Безо всяких слешей и http. Если у Вас домен третьего уровня, то также указываем без всего лишнего: first.site.ru
- secretka - а здесь надо будет указать секретный ключ. Дело в том, что меняй-не меняй путь до админки, в нее всегда можно будет войти напрямую, набрав: site.ru/wp-login.php?32432532432. Т.е. этот код после вопроса.
Правильнее всего будет сделать вот так: переходите на вот этот сервис. Пишете любое слово, какое хотите, и нажимаете на "отправить запрос". После чего, это слово будет зашифровано по технологии md5. Вам остается скопировать значение, и вставить его вместо слова secretka.
Вот пример кода, как он должен выглядеть у Вас:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^fasscortnn/?$ /wp-login.php?4345e53366746a2e3ad2713cc93bdf0c [R,L] RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^fasscortnn/?$ /wp-login.php?4345e53366746a2e3ad2713cc93bdf0c&redirect_to=/wp-admin/ [R,L] RewriteRule ^fasscortnn/?$ /wp-admin/?4345e53366746a2e3ad2713cc93bdf0c [R,L] RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php RewriteCond %{HTTP_REFERER} !^(.*)wpguru.ru/wp-admin RewriteCond %{HTTP_REFERER} !^(.*)wpguru.ru/wp-login\.php RewriteCond %{HTTP_REFERER} !^(.*)wpguru.ru/fasscortnn RewriteCond %{QUERY_STRING} !^4345e53366746a2e3ad2713cc93bdf0c RewriteCond %{QUERY_STRING} !^action=logout RewriteCond %{QUERY_STRING} !^action=rp RewriteCond %{QUERY_STRING} !^action=postpass RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L] RewriteCond %{QUERY_STRING} ^loggedout=true RewriteRule ^.*$ /wp-login.php?4345e53366746a2e3ad2713cc93bdf0c [R,L] </IfModule> |
Теперь сохраните файл, залейте его обратно на сервер, заменяя старый файл. И попробуйте перейти по ссылке, которую сами придумали. Все работает!
С помощью данного кода мы получили вот что:
- Пытаясь открыть адрес site.ru/wp-admin - мы получаем ошибку!
- Открывая адрес site.ru/wp-login.php - мы также получаем ошибку!
- Теперь путь к админке знаете только Вы. И его куда приятнее набирать, ведь было использовано наше любимое слово!
На этом у меня, пожалуй, все. Все доделываю шаблон на блог. Точнее он уже готов, только есть пока еще некоторые проблемы со стилями, с отображением миниатюр. Стараюсь сделать все максимально красиво и уютно. Обо всех изменениях еще буду писать.
Желаю всем успеха!
Комментарии