CMS | 4 апреля 2011 |
При установке wordpress, если не сменить префикс таблиц самому, то по умолчанию он будет _wp. Это делает блог уяизвимым для массовых атак, у которых в качестве цели, - дефолтный префикс таблиц _wp.
Сменить префикс, разумеется, легче всего при установке движка. Однако, если wordpress уже установлен, то придется сделать несколько лишних шагов.
Стоит подготовиться
Перед тем как делать что-либо с БД или близко с этим, то бэкап обязателен. Лично мне его каждый день отсылает на почту плагин. Можно его сделать в phpmyadmin. Можно запросить у хостера. И еще есть пути. Но здесь не о них.
Заметка: Не копируйте просто код! Заменяйте значения на свои.
Первый шаг
Откройте файл wp-config.php. Он находится в корневой директории, в которой установлен движок.
Найдите там $table_prefix .
1 | $table_prefix = '_впишите новый префикс'; |
Второй шаг
Меняем имена всех таблиц в БД. Вам нужно будет зайти в phpmyadmin.
Тут понадобится sql запрос.
1 2 3 4 5 6 7 8 9 10 11 | RENAME TABLE `wp_commentmeta` TO `вашПрефикс_commentmeta`; RENAME TABLE `wp_comments` TO `вашПрефикс_comments`; RENAME TABLE `wp_links` TO `вашПрефикс_links`; RENAME TABLE `wp_options` TO `вашПрефикс_options`; RENAME TABLE `wp_postmeta` TO `вашПрефикс_postmeta`; RENAME TABLE `wp_posts` TO `вашПрефикс_posts`; RENAME TABLE `wp_terms` TO `вашПрефикс_terms`; RENAME TABLE `wp_term_relationships` TO `вашПрефикс_term_relationships`; RENAME TABLE `wp_term_taxonomy` TO `вашПрефикс_term_taxonomy`; RENAME TABLE `wp_usermeta` TO `вашПрефикс_usermeta`; RENAME TABLE `wp_users` TO `вашПрефикс_users`; |
Третий шаг
Нужно найти опции разных таблиц, которые используют в полях этот префикс. Для этого используем следующий запрос:
1 | SELECT * FROM `вашПрефикс_options` WHERE `option_name` LIKE '%wp_%' |
Это выдаст вам много результатов. И вам придется по одному менять значения.
Четвертый шаг
Теперь нам нужно найти таблицу usermeta, со всем полям, которые пользуют старый префикс _wp. Для этого следующий запрос:
1 | SELECT * FROM `вашПрефикс_usermeta` WHERE `meta_key` LIKE '%wp_%' |
Если все прошло хорошо, то отлично. Если же нет, то, надеюсь, вы сделали бэкап как я советовал вначале. Но должно было все пройти нормально.
Нет похожих публикаций.




Severus
4 Апр 2011Menwyy’s it blog, да, я в начале поста упомянул, что легче всего это делать в начале. Но тоже в wp-config.php
Menwyy's it blog
4 Апр 2011День добрый. Хотел бы еще обратить внимание, что при установке нового блога изменить префикс базы данных можно прямо в инсталляционной форме.