Базовые настройки wp-config.php: файл & память, редакции — руководство для SSH, SFTP и cPanel

Уведомление о партнёрских ссылках v3.1
Уведомление о партнёрских ссылках v3.2 (мобильная версия)
Тестовая среда Семейство RHELAlmaLinux 9.8PHP 8.3WordPress 7.1.3Проверено 2026-10-11

Файл wp-config.php — самый важный конфигурационный файл сайта на WordPress. В нём хранится ключевая информация, которая нужна WordPress для подключения к базе данных и работы, поэтому он играет роль сердца сайта.

Ⅰ. Зачем нужен wp-config.php

В этом файле есть такие чувствительные настройки.

  • Данные подключения к базе данных
  • ↳ Здесь хранятся обязательные данные для подключения к базе, где лежит контент WordPress: имя базы MySQL или MariaDB, имя пользователя, пароль и хост.
  • Ключи безопасности и соли
  • ↳ Уникальные случайные строки, которые шифруют сеансы входа и cookie пользователей и тем самым усиливают защиту. Без этих ключей сеансы невозможно надёжно защитить.
  • Другие ключевые настройки
  • ↳ Здесь задаются важные константы, которые управляют работой WordPress: префикс таблиц, включение и отключение режима отладки, запрет редактирования файлов и другие.
Файл wp-config.php в WordPress

Поэтому файл wp-config.php становится для внешних злоумышленников целью номер один. Если права доступа к файлу настроены неверно или его содержимое раскрыто, может утечь вся база данных или злоумышленники получат права администратора сайта — это серьёзная уязвимость. Поэтому первый шаг к усилению защиты WordPress — обезопасить этот файл.

1️⃣ Где находится wp-config.php

wp-config.php лежит в корневой папке установки WordPress, рядом с папками [wp-admin]·[wp-content]·[wp-includes]. На хостинге с cPanel это папка [public_html], а на VPS файл находится в веб-корне (например, [/var/www/html/wp-config.php]).

Если в корневой папке файла не видно, проверьте папку на уровень выше. WordPress сначала ищет wp-config.php в папке установки, а если его там нет, загружает из папки уровнем выше.

2️⃣ Как открыть wp-config.php

В [File Manager] панели управления хостингом перейдите в корневую папку, щёлкните правой кнопкой мыши по wp-config.php и выберите [Edit]. Так файл можно править прямо в браузере, без отдельной программы.

FTP-клиент (FileZilla) позволяет скачать файл на компьютер, отредактировать его и загрузить обратно. Если перед загрузкой отдельно сохранить копию оригинала, при ошибке его можно сразу вернуть.

На серверах вроде VPS, к которым подключаются по SSH, запустите редактор [vi], указав после его имени путь к файлу; [nano] открывается так же.

vi /var/www/html/wp-config.php

3️⃣ wp-config-sample.php и базовая структура

В свежескачанном архиве WordPress нет wp-config.php — на его месте лежит только [wp-config-sample.php]. Когда на экране установки вводят данные базы, WordPress создаёт wp-config.php на основе этого файла; если скопировать и переименовать его вручную, результат будет тот же.

define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );

define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

$table_prefix = 'wp_';

define( 'WP_DEBUG', false );

В четыре строки [DB_NAME]·[DB_USER]·[DB_PASSWORD]·[DB_HOST] вписывают данные базы, полученные от хостинга. Если ошибиться хотя бы в одном значении, вместо сайта появится ошибка [Error establishing a database connection].

Восемь строк от [AUTH_KEY] до [NONCE_SALT] — значения, которые шифруют cookie входа; получите новый набор на [https://api.wordpress.org/secret-key/1.1/salt/] и замените их целиком. После смены значений все вошедшие пользователи выйдут из системы.

[$table_prefix] — префикс перед именами таблиц базы данных, по умолчанию [wp_]; он разделяет несколько установок WordPress в одной базе. Если переключить [WP_DEBUG] в [true], ошибки PHP будут выводиться на экран, поэтому на рабочем сайте оставляйте [false].

Ⅱ. Базовые настройки wp-config.php после установки WordPress

Все строки настроек вставляются над комментарием /* That’s all, stop editing! Happy publishing. */. В симуляторе ниже выберите способ подключения — SSH, cPanel или FTP — и откройте wp-config.php: курсор сразу перейдёт к строке настройки, которую вы нажали слева.

⚙️ Настройки wp-config.phpСимулятор настроек
/* That’s all, stop editing! Happy publishing. */
Технически этот комментарий (/* That’s all, stop editing! Happy publishing. */) как PHP-код ничего особенного не делает. Это просто комментарий.
user_a@server: ~
Last login: Mon Oct 5 14:10:02 2026 from 10.0.0.12
[user_a@server ~]$
Но разработчики WordPress оставили его как ‘метку‘ для пользователей со смыслом «ниже этого комментария — ключевой код, без которого WordPress не работает, не трогайте его».
  1. Константы настроек (define) — выше: Большинство констант, связанных с настройками WordPress (define), нужно размещать над строкой /* That’s all, stop editing! Happy publishing. */ — то есть прямо над комментарием, чтобы WordPress правильно загрузил их при инициализации настроек.
  2. Загрузка WordPress — ниже: Ниже этого комментария находятся определение [ABSPATH] и код [require_once( ABSPATH . ‘wp-settings.php’ );]. С момента загрузки файла [wp-settings.php] основные функции WordPress действительно начинают работать.
Поэтому, чтобы добавить дополнительные настройки (например, запрет редактирования файлов [define(‘DISALLOW_FILE_EDIT’, true);] или лимит памяти [define(‘WP_MEMORY_LIMIT’, ‘256M’);]), их нужно записать до вызова основного загрузочного файла WordPress, то есть прямо над комментарием: только так они применятся без ошибок.
В wp-config-sample.php прямо над комментарием [stop editing] есть ещё одна строка-комментарий — [Add any custom values between this line and the “stop editing” line.]; собственные настройки вставляют между этими двумя комментариями.
Настройка памяти WordPress
В руководствах по WordPress и в официальной документации чаще всего встречается [define(‘WP_MEMORY_LIMIT’, ‘256M’);] в одиночку — без второй строки.
Настройка памяти задаёт максимум памяти, который WordPress может использовать в PHP, чтобы при работе тем или плагинов не возникала ошибка нехватки памяти (Fatal error: Allowed memory size exhausted). Иными словами, для стабильной работы сайта и защиты от перерасхода ресурсов это базовая страховка.
‘WP_MAX_MEMORY_LIMIT’ — настройка, которая разрешает бэкенду больше памяти, чем фронтенду.
WP_MEMORY_LIMIT — это «лимит памяти для посетителей сайта»,
а WP_MAX_MEMORY_LIMIT — «расширенный лимит для админки и внутренних задач».
Только задав обе константы, можно получить полный контроль над памятью WordPress.
Если значение в wp-config.php больше, чем в php.ini или в настройках пула PHP-FPM на сервере, действует серверная настройка.
Ограничение редакций
Отдельный плагин, чтобы задать число редакций, не нужен. Одна строка с константой ниже в wp-config.php даёт тот же результат и не оставляет в базе данных настроек плагина, которые потом придётся чистить.
Редакции WordPress постоянно накапливают версии записей до правки, и сайт начинает тормозить. Особенно на сайтах WordPress без кеша, а также на сайтах с кешем, пока вы работаете в консоли админки — особенно когда создаёте контент записей или страниц, — могут замедляться даже страницы для посетителей.
Например, если сервер загружен примерно на 50% общей мощности CPU, страницы для посетителей могут замедлиться, какой бы плагин кеширования вы ни использовали.
Поэтому редакции отключают или ограничивают их число.
Если вы пользуетесь WP Rocket или Perfmatters, это можно сделать и в их настройках. WP Rocket удаляет уже накопившиеся редакции через [Ревизии] на вкладке [База данных], но настройки для ограничения их числа в нём нет.
Экран очистки редакций в базе данных WP Rocket
Perfmatters задаёт число редакций для каждой записи в [Установить лимит редакций], а интервал автосохранения — в [Интервал автосохранения].
Настройка лимита редакций в Perfmatters
Интервал автосохранения записей
По умолчанию WordPress автоматически сохраняет записи раз в минуту. Например, интервал можно увеличить со стандартных 60 секунд → до 5 минут (300 секунд).
Настройка Heartbeat
Для Heartbeat нет константы в wp-config.php, поэтому через этот файл его не настроить. Если вставить код ниже в wp-config.php, он выполнится раньше, чем WordPress загрузит функцию [add_action], и сайт остановится с ошибкой [Call to undefined function add_action()].
‘Heartbeat’ в WordPress — это сигнал, который проверяет, остаётся ли связь между сервером и сайтом. Heartbeat API использует 
/wp-admin/admin-ajax.php для AJAX-вызовов из браузера. В консоли WordPress через этот файл каждые 15 секунд отправляется POST-запрос.
Можно настроить, чтобы Heartbeat работал только на экранах написания записей в админке — [post.php]·[post-new.php].
WP Rocket: если вы им пользуетесь, на вкладке [Пульсация] выберите для админки, редактора записей и фронтенда один из вариантов: [Не ограничивать]·[Уменьшить активность]·[Отключить].
Экран настроек Heartbeat в WP Rocket
Perfmatters задаёт экраны, где Heartbeat разрешён, в [Отключить Heartbeat], а интервал запросов — в [Интервал пульсации].
Настройки Heartbeat в Perfmatters
Если нет ни одного из этих плагинов, не ставьте ещё один плагин ради одного Heartbeat. Плагины оставляют свои настройки в базе данных даже после удаления, поэтому вставьте код ниже в [functions.php] темы.
/** Disable Heartbeat everywhere except post editor */
add_action('init', function() {
    global $pagenow;
    if ($pagenow != 'post.php' && $pagenow != 'post-new.php') {
        wp_deregister_script('heartbeat');
    }
}, 1);
Глобальные настройки
Глобальные настройки — это wp-config.php со всеми настройками из этой статьи.
Две строки памяти, лимит в 3 редакции и автосохранение раз в 300 секунд уже стоят по порядку над комментарием [stop editing].
Heartbeat в глобальные настройки не входит: в wp-config.php он вызывает ошибку.
Нажмите значок копирования в правом верхнем углу экрана — скопируются только строки, которые нужно вставить.
Работает только в браузере и не меняет настоящие файлы. Выберите вверху способ подключения и по очереди нажимайте чипы, чтобы открыть wp-config.php: курсор перейдёт к строке настройки, которую вы нажали слева. Вместо чипов можно щёлкнуть по терминалу и вводить команды и клавиши vi самостоятельно. На виртуальном сервере есть только файлы, нужные для этой статьи, а экраны cPanel и FileZilla — упрощённые рисунки настоящих.

🔢 FAQ & рекомендуемые материалы

Если в только что сохранённой строке не хватает кавычки или точки с запятой, PHP не может дочитать wp-config.php до конца, и сайт не открывается. Верните оригинал, сохранённый до правки, и проверьте только изменённые строки.

Статья о защите wp-config.php рекомендует [600] — читать и писать может только владелец. На серверах, где PHP работает от другой учётной записи, чем владелец файла, при 600 PHP не сможет прочитать файл, поэтому сразу после смены проверьте, открывается ли сайт.

При включении WP Rocket добавляет в самый верх файла строку [define( ‘WP_CACHE’, true ); // Added by WP Rocket]; в wp-config.php на проверенном сервере она тоже стоит во 2-й строке. Только при наличии этой строки WordPress загружает файл кеша [advanced-cache.php].

Если такая же константа уже определена выше в файле, PHP оставляет первое значение, а для нижней строки лишь выдаёт предупреждение [Constant WP_MEMORY_LIMIT already defined]. Поищите имя константы по всему файлу, чтобы найти строки, добавленные хостингом или плагином.

ℹ️ О партнёрских ссылках
Материалы этого сайта содержат партнёрские ссылки. Если посетитель покупает товар или услугу по такой ссылке, сайт получает комиссию от продавца. При этом сумма, которую платит покупатель (при акционных скидках сумма снижается ↓), не увеличивается. Указанные цены, скидки и наличие актуальны на момент написания и могут отличаться, поэтому перед покупкой уточняйте их у продавца. Товары выбираются и оцениваются по нашим собственным критериям, а комиссия не влияет ни на порядок, ни на содержание обзоров.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Докажите, что вы человек: 2   +   4   =