Как найти, получить доступ и отредактировать wp-config.php в WordPress

Опубликовано: 2022-07-14

Что такое wp-config.php в WordPress?

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

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

Где находится файл wp-config.php ?

Теперь, когда вы знаете, что делает wp-config.php , вы, вероятно, задаетесь вопросом: «Где находится wp-config.php ?» Если вы ищете расположение файла wp-config.php на уже существующем сайте WordPress, вы найдете его в корневой папке вашей установки WordPress. Ваша корневая папка содержит папки wp-admin , wp-content и wp-includes . Под этими папками вы увидите список файлов, многие из которых начинаются с префикса «wp-». Здесь вы найдете файл wp-config.php .

список основных файлов и папок с выбранным wp-config.php

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

  • Имя базы данных : имя базы данных, связанной с вашей установкой WordPress.
  • Имя пользователя базы данных : имя пользователя, используемое для доступа к вашей базе данных.
  • Пароль базы данных : пароль, связанный с пользователем базы данных.
  • Хост базы данных : имя хоста вашего сервера базы данных (обычно «localhost», но может варьироваться в зависимости от вашего хостинг-провайдера).

Затем WordPress использует эту информацию для создания файла wp-config.php в вашем корневом каталоге.

форма сведений о подключении к базе данных

Вы также можете вручную настроить wp-config.php , если хотите. Это может быть хорошим вариантом, если у вас есть много индивидуальных настроек, которые вы хотели бы добавить в конфигурацию вашего сайта.

Как получить доступ к wp-config.php ?

Есть несколько простых способов получить доступ к wp-config.php — через безопасный протокол передачи файлов (SFTP) или через cPanel, если ваша хостинговая компания предоставляет его.

1. Доступ к wp-config.php через SFTP

Шаг 1: Установите SFTP-клиент. Первым шагом будет загрузка и установка SFTP-клиента, если у вас его еще нет. Несколько хороших вариантов включают в себя:

Заявление Система Бесплатно или Премиум
WinSCP Окна Свободно
Файлзилла Виндовс, Мак, Линукс Бесплатные и премиальные варианты
Кибердак Windows, Мак Свободно
Передать Мак Премиум

В этом примере мы будем использовать Filezilla, но другие клиенты SFTP должны работать аналогично.

Шаг 2: Получите свои учетные данные SFTP. После того, как вы установили свой SFTP-клиент, вам потребуются учетные данные SFTP с вашего веб-хоста, чтобы получить доступ к вашему серверу. Эти данные вы найдете в панели управления хостингом. В зависимости от вашего хоста эта информация может быть сгенерирована для вас, или вам, возможно, придется пройти процесс создания имени пользователя и пароля SFTP. Если вы не знаете, где найти эти учетные данные или как их создать, обратитесь в службу поддержки вашего хоста или найдите инструкции в их справочной документации. Детали, которые вам понадобятся для вашего SFTP-клиента:

  • Хост (IP-адрес или URL-адрес вашего активного сервера)
  • Имя пользователя SFTP
  • Пароль
  • Номер порта

Шаг 3: Введите свои учетные данные в клиенте SFTP. Введите IP-адрес или URL-адрес вашего хоста, имя пользователя SFTP, пароль и номер порта.

Примечание. Если ваш SFTP-клиент использует аутентификацию «доверие при первом использовании» (TOFU), вы можете получить предупреждение «Неизвестный ключ хоста». Нажмите «ОК» и продолжайте. Установите флажок «Всегда доверять этому хосту, добавьте этот ключ в кеш», если вы планируете снова использовать свой SFTP-клиент для доступа к сайту.

Сообщение TOFU от Filezilla

Шаг 4: Перейдите в корневой каталог вашего сайта.

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

Ваш корневой каталог обычно находится в папке с пометкой «www» или «public_html», но может иметь другое имя. Соглашения об именах корневых папок на некоторых хостах различаются, поэтому, если вы не уверены, в какой папке искать, спросите у своего хостинг-провайдера. Вы поймете, что находитесь в правильной папке, если увидите папки wp-admin , wp-content и wp-includes вверху списка файлов.

поиск папки public_html через FTP

Шаг 5: Выберите или создайте папку на локальном компьютере, куда вы хотите добавить файл wp-config.php . Если у вас уже выбрана папка, используйте левую панель, чтобы перейти к ней и открыть ее. Если нет, найдите каталог, в котором вы хотите создать новую папку, щелкните правой кнопкой мыши на левой панели и выберите « Создать каталог ».

создать выбор каталога

Назовите свой каталог и нажмите OK .

Дважды щелкните, чтобы открыть созданный вами новый каталог.

Шаг 6: Найдите и загрузите wp-config.php . Файл wp-config.php находится в вашей корневой папке, поэтому просто прокрутите вниз до wp-config.php в нижней правой панели вашего SFTP-клиента. Щелкните правой кнопкой мыши файл wp-config.php и выберите « Загрузить » или просто перетащите файл с правой панели в нужную папку на левой панели.

скачиваем файл wp-config.php

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

2. Доступ к wp-config.php в cPanel

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

Шаг 1: Откройте файловый менеджер cPanel. Как только вы окажетесь в cPanel, перейдите в раздел « Файлы » и нажмите « Диспетчер файлов ».

Шаг 2: Откройте корневую папку вашего сайта. Корневая папка обычно называется «www» или «public_html», но может иметь и другое имя. Соглашения об именах корневых папок на некоторых хостах различаются, поэтому, если вы не уверены, в какой папке искать, спросите у своего хостинг-провайдера. Вы поймете, что находитесь в правильной папке, если увидите папки wp-admin , wp-content и wp-includes вверху списка файлов.

Шаг 3: Найдите и скачайте wp-config.php . Файл wp-config.php находится в вашей корневой папке, поэтому просто прокрутите вниз до wp-config.php в правой панели файлового менеджера cPanel. Щелкните правой кнопкой мыши wp-config.php и выберите « Загрузить » или щелкните один раз wp-config.php, а затем выберите пункт « Загрузить » в верхнем меню.

загрузка wp-config.php из cpanel

Выберите или создайте папку, в которую вы хотите поместить файл wp-config.php (НЕ переименовывайте его), и нажмите «Сохранить ».

выбор папки для сохранения wp-config.php в

Теперь ваш файл wp-config.php должен быть загружен на ваш локальный компьютер в выбранный вами каталог. Вы должны быть в состоянии найти его в файловом браузере вашего компьютера.

Как отредактировать файл wp-config.php

Существует два варианта редактирования wp-config.php . Вы можете использовать редактор исходного кода или редактировать его непосредственно в cPanel. Прежде чем редактировать файл wp-config.php в WordPress, обязательно сделайте резервную копию своего сайта!

1. Сделайте резервную копию вашего сайта

Каждый раз, когда вы вносите серьезные изменения в свой сайт — особенно в основные файлы или плагины WordPress — вы рискуете, что что-то пойдет не так. Это может быть что-то столь же незначительное, как едва заметная проблема с отображением ужасного белого экрана смерти. Чтобы предотвратить простои и потерю данных при внесении изменений в основные аспекты вашего сайта, всегда сначала делайте резервную копию. Если на вашем сайте еще не установлено средство резервного копирования, Jetpack Backup — доступное решение с восстановлением одним щелчком мыши.

Все резервные копии? Хороший. Мы можем приступить к редактированию файла wp-config.php .

2. Как редактировать wp-config.php с помощью редактора исходного кода

Лучший способ редактировать wp-config.php — использовать выбранное вами программное обеспечение для редактирования кода. Поскольку вы редактируете копию wp-config.php , которая находится в автономном режиме на вашем локальном компьютере, вам не нужно подключаться к Интернету, чтобы работать с вашим файлом, и у вас меньше шансов перезаписать исходный файл wp-config. .php , когда вы загружаете его обратно на свой сервер (в отличие от редактирования непосредственно в cPanel).

Шаг 1: Откройте wp-config.php в редакторе исходного кода. Если вы не знакомы с использованием редактора исходного кода, есть несколько бесплатных вариантов на выбор.

Бесплатный исходный код и текстовые редакторы:

Заявление Система
Блокнот++ Окна
Атом.ио Виндовс, Мак, Линукс
возвышенный Виндовс, Мак, Линукс
ТекстПравить
* убедитесь, что вы находитесь в текстовом режиме
Mac (приложение по умолчанию)
Блокнот Windows (приложение по умолчанию)

Шаг 2: Отредактируйте файл wp-config.php и сохраните его на локальном компьютере. Ваш дисплей может выглядеть по-разному в зависимости от того, какую программу вы используете для редактирования файла wp-config.php . Вот как часть кода выглядит в atom.io:

содержимое файла wp-config.php

Добавьте или измените любую необходимую информацию, затем сохраните файл. Перейти к разделу «Что можно настроить с помощью wp-config.php ?» чтобы узнать больше о различных типах изменений, которые вы можете внести в файл wp-config.php .

Шаг 3: Войдите на свой веб-сервер через SFTP или cPanel. Перейдите в корневую папку вашего сайта и найдите файл wp-config.php .

Шаг 4: Измените имя файла wp-config.php на вашем веб-сервере. Если ваша отредактированная версия содержит ошибки, вы не хотите перезаписывать исходный файл. Вы хотите иметь возможность быстро восстановить исходный файл wp-config.php, поэтому переименовав его во что-то вроде «wp-config-orginal.php» , вы не только гарантируете, что WordPress проигнорирует этот файл, но и сохраните содержимое исходного файла. существуют на вашем сервере.

переименование файла wp-config.php

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

Шаг 5: Загрузите wp-config.php с вашего локального компьютера на ваш веб-сервер. Используя SFTP или cPanel, загрузите файл wp-config.php в корневой каталог вашего веб-сервера.

SFTP-клиент:

перемещение файла wp-config.php через ftp

cPanel:

загрузка файла через cpanel

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

Шаг 7: Удалите старый, переименованный файл wp-config.php . Убедившись, что ваш сайт работает правильно, вы можете удалить wp-config-original.php (или то, во что вы его переименовали).

3. Как редактировать wp-config.php прямо в cPanel

Если у вас нет или вы не хотите использовать редактор исходного кода, вы можете редактировать wp-config.php непосредственно в cPanel (если ваш хост использует cPanel). Это немного более рискованно, чем редактирование на локальном компьютере. Если ваше интернет-соединение прервется во время редактирования, вы можете потерять свои изменения. Вы также рискуете перезаписать исходный файл wp-config.php без предварительного сохранения резервной копии. Но пока вы делаете копию исходного файла wp-config.php и имеете надежное подключение к Интернету, вы должны быть в относительной безопасности при редактировании непосредственно в cPanel.

Шаг 1: Найдите wp-config.php в cPanel. В cPanel нажмите «Диспетчер файлов».

Перейдите в свою корневую папку (обычно это «public_html» или «www» , но, в зависимости от вашего хоста, она может называться по-другому).

Шаг 2: Создайте новую папку для файла резервной копии wp-config.php . В главном меню файлового менеджера нажмите + Папка , чтобы добавить новую папку. Мы сделаем копию вашего файла wp-config.php и сохраним его здесь в качестве резервной копии.

добавление папки в cpanel

Назовите вашу новую папку как-то легко идентифицировать, например , «резервная копия конфигурации», чтобы вы могли легко найти ее позже. Щелкните Создать новую папку .

Шаг 3: Найдите файл wp-config.php в корневой папке и скопируйте его в резервную папку. В корневом каталоге прокрутите вниз до wp-config.php и щелкните правой кнопкой мыши имя файла. Выберите Копировать .

Появится диалоговое окно с просьбой ввести путь к файлу, в который вы хотите скопировать файл. Обычно имя корневой папки предварительно заполнено, поэтому вам нужно будет добавить только имя папки резервного копирования, которую вы только что создали, после '/public_html/ ' (или любое другое имя вашей корневой папки). Поэтому, если ваша папка с резервной копией называется «backup config», ваш путь к файлу будет выглядеть примерно так : «/public_html/backup config. '

Щелкните Копировать файл(ы) .

После того, как вы скопировали файл, перейдите в папку « backup config», и вы увидите там wp-config.php . Вы должны пойти дальше и переименовать это, чтобы не путать этот файл wp-config.php и тот, который вы хотите отредактировать. Щелкните правой кнопкой мыши файл wp-config.php и выберите « Переименовать» .

Вы можете переименовать его как хотите, но в этом случае мы переименуем его в wp-config-original.php .

переименование файла wp-config.php

Шаг 4: Вернитесь к файлу wp-config.php в корневом каталоге. Теперь, когда у нас есть резервная копия нашего файла wp-config.php , мы вернемся к файлу wp-config.php в корневом каталоге, чтобы отредактировать его.

Выберите wp-config.php , затем нажмите « Изменить » в верхнем меню файлового менеджера.

редактирование через инструменты cpanel

Шаг 5: Отредактируйте wp-config.php . Теперь вы должны увидеть содержимое файла wp-config.php на своем экране. Это должно выглядеть примерно так:

файл wp-config.php в cpanel

Добавьте или измените любую необходимую информацию, затем сохраните файл. Перейти к разделу «Что можно настроить с помощью wp-config.php ?» чтобы узнать больше о различных типах изменений, которые вы можете внести в файл wp-config.php .

Создание файла wp-config.php вручную

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

поиск файла wp-config-sample.php

Откройте wp-config-sample.php в редакторе исходного кода. Ваш дисплей может выглядеть по-разному в зависимости от того, какую программу вы используете для редактирования файла wp-config-sample.php . Вот как часть кода выглядит в atom.io:

содержимое файла wp-config.php

Введите следующие данные базы данных и любые пользовательские настройки, которые могут вам понадобиться:

Имя базы данных для WordPress

 define( 'DB_NAME', 'database_name_here' );

Имя пользователя базы данных

 define( 'DB_USER', 'username_here' );

Пароль базы данных

 define( 'DB_PASSWORD', 'password_here' );

Имя хоста базы данных

 define( 'DB_HOST', 'localhost' );

Кодировка базы данных для использования при создании таблиц базы данных (обычно utf8)

 define( 'DB_CHARSET', 'utf8' );

Тип сопоставления базы данных (не меняйте его, если сомневаетесь)

 define( 'DB_COLLATE', '' );

Уникальные ключи и соли аутентификации

Измените их на разные уникальные фразы. Вы можете сгенерировать их с помощью службы секретных ключей WordPress.org. Их можно изменить в любое время, чтобы аннулировать все существующие файлы cookie. Просто имейте в виду, что это заставит всех пользователей снова войти в систему.

 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' );

Определить пользовательский префикс таблицы базы данных WordPress

Префикс таблицы базы данных по умолчанию для WordPress — «wp_», но вы можете определить собственный префикс, если хотите. Кроме того, если у вас есть несколько установок WordPress в одной базе данных, вы можете присвоить каждой из них уникальный префикс. Используйте только цифры, буквы и символы подчеркивания.

 $table_prefix = 'wp_';

Определить режим отладки WordPress

По умолчанию для режима отладки WordPress в wp-config.php должно быть установлено значение «false», если вы не находитесь в режиме разработки и активно пытаетесь устранить проблемы на своем сайте.

 define( 'WP_DEBUG', false );

Измените это утверждение на «true», чтобы включить отображение сообщений об ошибках и предупреждений во время разработки.

Добавить пользовательские значения

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

 /* Add any custom values between this line and the "stop editing" line. */ YOUR CUSTOM VALUES GO HERE /* That's all, stop editing! Happy publishing. */

Для получения информации о настраиваемых значениях, которые можно использовать, прокрутите вниз до раздела «Что можно настроить с помощью wp-config.php?». '

Укажите абсолютный путь к каталогу WordPress.

Ниже ваших пользовательских значений после '/* Это все, прекратите редактирование! Удачной публикации.*/», вы увидите еще пару фрагментов кода. Первый определяет абсолютный путь к каталогу WordPress. Вы можете оставить это как есть, если вы не настроили WordPress в подкаталоге — в этом случае вы должны заменить '/' на ' /your-subdirectory/ '.

 if ( ! defined( 'ABSPATH' ) ) { define( 'ABSPATH', __DIR__ . '/' ); }

Настройте переменные WordPress и включаемые файлы

Этот последний раздел в вашем файле wp-config-sample.php объявляет абсолютный путь к wp-settings.php , который устанавливает переменные WordPress и включаемые файлы.

 require_once ABSPATH . 'wp-settings.php';

Когда вы закончите редактирование своего примера файла конфигурации, сохраните его как «wp-config.php» и поместите его в корневой каталог вашего сайта с помощью SFTP или cPanel.

ПРИМЕЧАНИЕ. Содержимое файла wp-config-sample.php имеет определенный порядок, и этот порядок важен. Изменение порядка информации в файле конфигурации может привести к ошибкам на вашем сайте.

Что вы можете настроить в wp-config.php ?

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

Что нельзя настроить в wp-config.php?

Хотя список настроек, которыми вы можете управлять в wp-config.php , велик, есть некоторые вещи, которые вы не можете сделать.

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

Есть также некоторые жестко закодированные аспекты WordPress, которые вы не можете изменить даже в wp-config.php — например, расположение папки тем.

Как защитить wp-config.php от эксплойтов безопасности

Ваш файл wp-config.php содержит много конфиденциальной информации о вашем сайте — информации, которую вы хотите скрыть от хакеров. Вот несколько советов, которые помогут защитить файл wp-config.php :

1. Установите плагин безопасности

Плагин безопасности автоматически добавит настройки на ваш сайт, которые помогут защитить все аспекты, включая wp-config.php, от попыток взлома.

Инструмент безопасности Jetpack для WordPress — это недорогой вариант, который поможет защитить ваш сайт от вредоносных атак. Jetpack Security включает в себя:

  • Защита от грубой силы, которая останавливает атаки на их пути
  • Мониторинг простоев, чтобы предупредить вас, как только возникнет проблема
  • Журнал действий, чтобы вы знали, когда и когда происходили подозрительные действия.
  • Безопасная аутентификация для предотвращения несанкционированного доступа
  • Сканирование вредоносных программ, которое предупреждает вас, если ваш сайт был взломан
  • Защита от спама для ваших страниц, сообщений и контактных форм

Jetpack Security также отслеживает на вашем сайте любые изменения в основных файлах WordPress, устаревшие или небезопасные плагины и другие уязвимости, чтобы вы могли обнаружить их до того, как хакер обнаружит их и воспользуется ими.

2. Запретить доступ к wp-config.php через файл . htaccess- файл

Вы можете использовать . htaccess для защиты wp-config.php . Вы найдете этот файл в корневой папке.

Шаг 1: Загрузите . htaccess

Используя SFTP или cPanel, перейдите в корневую папку вашего сайта. Щелкните правой кнопкой мыши на .htaccess и выберите « Загрузить» , чтобы загрузить файл на локальный компьютер.

Шаг 2: Добавьте код для блокировки доступа к wp-config.php

В исходном коде или текстовом редакторе откройте .htaccess и добавьте следующий код:

 <files wp-config.php> order allow,deny deny from all </files>

Сохраните файл. Убедитесь, что ваша программа не включает расширение файла. Если вы используете Блокнот или Text Edit, он может добавить расширение файла .txt, которое вам не нужно. Файл должен быть просто назван «. htaccess .

Шаг 3: Загрузите отредактированный .htaccess обратно в корневую папку.

Загрузите отредактированный . htaccess обратно в корневую папку вашего сайта. Вас спросят, хотите ли вы перезаписать существующий файл. Нажмите «ОК» .

Теперь ваш . htaccess должен блокировать внешний доступ к вашему файлу wp-config.php .

3. Скрыть wp-config.php за пределами корневого каталога

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

Этот процесс включает в себя небольшую дополнительную настройку — вы не можете просто перетащить wp-config.php за пределы корневой папки. Тем не менее, усилия стоят того, чтобы добавить дополнительный уровень защиты на ваш сайт.

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

Шаг 1: Загрузите текущий файл wp-config.php .

В вашей корневой папке находятся все ваши файлы WordPress, включая файл wp-config.php . Он может называться «public_html» или «www» . Если вы не знаете, где находится ваша корневая папка или каталог WordPress, обратитесь в свою хостинговую компанию.

Найдя корневую папку и каталог WordPress, загрузите файл wp-config.php на локальный компьютер через SFTP или cPanel.

сохранить файл wp-config.php на свой компьютер через ftp

Шаг 2: Создайте новый каталог вне корневой папки.

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

создание каталога через ftp

Дайте вашему каталогу имя, которое вы легко запомните, как репозиторий для вашего файла wp-config.php . Вы даже можете создать несколько вложенных папок, если хотите — вам просто нужно запомнить имена всех из них для шага 4.

Шаг 3: Загрузите wp-config.php в новую папку

Загрузите файл wp-config.php , который вы скачали ранее, в новую папку через SFTP или cPanel.

перемещение wp-config.php в новый каталог

Проверьте права доступа к новой папке и файлу wp-config.php и убедитесь, что они установлены на 600.

проверка прав доступа к файлам для wp-config.php
изменить права доступа к файлам на 600

Шаг 4: Укажите WordPress на новый файл wp-config.php

У вас должен быть файл wp-config.php в вашем новом «секретном» каталоге, а также исходный файл wp-config.php , который все еще находится в вашем корневом каталоге. Чтобы WordPress мог найти и использовать правильный файл, вам необходимо удалить всю информацию из файла wp-config.php вашего корневого каталога и заменить его следующим фрагментом кода:

 <?php include('/home3/usr/secureconfig/wp-config.php'); ?>

Примечание. Ваш путь к файлу будет выглядеть по-другому, поскольку вы будете использовать имена каталогов вашего отдельного сервера.

В cPanel вы можете открыть файл wp-config.php корневого каталога и отредактировать его напрямую или отредактировать копию, которую вы ранее загрузили на локальный компьютер, используя редактор исходного кода. Для этого примера мы отредактировали копию, загруженную ранее с помощью Atom.io.

Сохраните файл wp-config.php и загрузите его обратно в корневой каталог.

перемещение файла wp-config.php

Вас спросят, хотите ли вы перезаписать файл. Нажмите « ОК» , чтобы перезаписать файл.

Теперь WordPress должен ссылаться на ваш новый файл wp-config.php в безопасном месте за пределами корневой папки.

4. Измените имя вашего файла wp-config.php

Изменение имени вашего файла wp-config.php также может помочь скрыть его от хакеров. Если вы сделаете это, вам также потребуется разместить этот файл за пределами вашей корневой папки. Если вы уже выполнили шаги, описанные в разделе «Скрыть wp-config.php вне корневого каталога», вы можете изменить имя файла wp-config.php , выполнив следующие дополнительные действия:

Шаг 1: В защищенном каталоге за пределами корневой папки измените имя файла wp-config.php .

Перейдите в папку wp-config.php, расположенную за пределами корневого каталога, и измените имя на что-то уникальное, например, «secret-setup-file.php» или «cheese-sandwich.php» — это не имеет большого значения.

Шаг 2: Отредактируйте код в файле wp-config.php в корневом каталоге, чтобы отразить изменение имени.

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

Загрузите копию файла wp-config.php из корневой папки на свой локальный компьютер и отредактируйте его с помощью редактора исходного кода по вашему выбору. Измените имя файла wp-config.php на новое имя файла, а затем сохраните его.

 <?php include('/home3/usr/secureconfig/cheese-sandwich.php'); ?>

Шаг 3: Загрузите wp-config.php обратно в корневой каталог

Вас спросят, хотите ли вы перезаписать существующий файл. Нажмите «ОК».

Теперь WordPress должен указывать на ваш переименованный файл конфигурации.

Редактирование wp-config.php для повышения производительности WordPress

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

1. Очистите редактирование изображения

Каждый раз, когда вы редактируете изображение в WordPress, создается новый набор миниатюр и изображений других размеров. При восстановлении исходного изображения эти изменения не удаляются. Это может привести к загромождению папок мультимедиа. Если вы хотите убедиться, что на вашем сервере существует только один набор правок изображений и что при восстановлении оригинала эти правки удаляются, вы можете использовать следующий код:

 define( 'IMAGE_EDIT_OVERWRITE', true );

2. Восстановите базу данных

Если ваш сайт работает медленно, возникают ошибки и вы подозреваете, что ваша база данных повреждена и нуждается в восстановлении, вы можете включить автоматическое восстановление базы данных, используя WP_ALLOW_REPAIR и установив значение «true».

 define( 'WP_ALLOW_REPAIR', true );

Обязательно отключите эту функцию, как только проблема с базой данных будет решена. Этот скрипт также можно найти в файле repair.php: {$your_site}/wp-admin/maint/repair.php .

3. Управляйте настройками редакции публикации

Пока вы редактируете сообщение, WordPress автоматически сохраняет ваши версии каждые 60 секунд по умолчанию. Если вам нужны более длительные задержки между сохранениями или более частые интервалы сохранения, вы можете изменить интервал автоматического сохранения.

 define( 'AUTOSAVE_INTERVAL', 60 ); // Seconds

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

Укажите максимальное количество ревизий постов

 define( 'WP_POST_REVISIONS', 3 );

Отключить ревизии постов

 define( 'WP_POST_REVISIONS', false );

4. Управление настройками корзины

По умолчанию WordPress безвозвратно удаляет элементы из корзины после того, как они находились там в течение 30 дней. Если вы хотите изменить эту частоту, вы можете использовать следующий код и установить число на нужную частоту.

 define( 'EMPTY_TRASH_DAYS', 30 ); // 30 days

Вы также можете отключить очистку корзины, установив количество дней равным нулю.

 define( 'EMPTY_TRASH_DAYS', 0 ); // Zero days

Примечание. Если вы отключите очистку корзины, WordPress не будет запрашивать подтверждение, когда кто-то нажимает « Удалить навсегда ». Используйте эту настройку с осторожностью!

5. Отрегулируйте настройки cron

WordPress использует WP-Cron для планирования срочных задач, таких как проверка обновлений и публикация запланированных сообщений.

Если запланированные сообщения не публикуются или другие задания cron не могут быть выполнены на вашем сайте, вы можете попробовать использовать альтернативный cron. Когда для ALTERNATE_WP_CRON установлено значение «true», браузеры посетителей перенаправляются на новое соединение, в то время как cron продолжает работать в прерванном соединении.

 define( 'ALTERNATE_WP_CRON', true );

Примечание. Поскольку этот метод зависит от неродной службы WordPress, существуют некоторые риски.

Вы также можете изменить интервалы, с которыми могут запускаться процессы cron, или полностью отключить cron.

Отключить хрон

 define( 'DISABLE_WP_CRON', true );

Тайм-аут крона

 define( 'WP_CRON_LOCK_TIMEOUT', 60 );

6. Увеличьте память, выделенную для PHP

Если у вас есть плагины или темы, которые используют много ресурсов PHP, вы можете столкнуться с сообщением «Разрешенный размер памяти xxxxxx байт исчерпан». Некоторые темы и плагины могут даже указывать минимальное ограничение памяти PHP, чтобы иметь возможность использовать свое программное обеспечение или определенные функции своего программного обеспечения (например, импорт демонстрационных данных).

WordPress по умолчанию попытается увеличить лимиты памяти PHP до 40 МБ для отдельных сайтов и 60 МБ для многосайтовых установок, но вам может потребоваться установить более высокий лимит. Иногда ваш лимит памяти PHP устанавливается вашим хостом, и хотя некоторые хосты позволяют вам редактировать лимит памяти PHP, другие этого не делают.

Если ваш хост позволяет вам увеличить лимит памяти PHP, вы можете добавить следующий код в свой файл wp-config.php и заменить «96M» на необходимый вам объем памяти (не забудьте использовать M, а не MB после числа) :

 define( 'WP_MEMORY_LIMIT', '96M' );

Этот параметр увеличивает память PHP только для WordPress, но не для других приложений.

Задачи в админке WordPress требуют гораздо больше памяти, чем действия в интерфейсе вашего сайта. Вы можете увеличить объем памяти административной области, определив WP_MAX_MEMORY_LIMIT.

 define( 'WP_MAX_MEMORY_LIMIT', '256M' );

Примечание. Поместите этот код перед включением wp-settings.php в ваш файл wp-config.php .

7. Включить/отключить кеш

Некоторые плагины кеширования используют файл advanced-cache.php и активируют WP_CACHE в вашем файле wp-config.php . Иногда вам может потребоваться добавить его вручную, добавив следующее:

 define( 'WP_CACHE', true );

Или вы можете отключить кеширование. В этом случае замените «истина» в приведенном выше утверждении на «ложь».

 define( 'WP_CACHE', false );

Редактирование wp-config.php для повышения безопасности WordPress

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

1. Определите собственный table_prefix

Префикс по умолчанию для таблиц базы данных WordPress — «wp_», но вы можете использовать любой префикс, который вам нравится, со следующим кодом:

 $table_prefix = 'customprefix_';

Замените «customprefix_» текстом по вашему выбору, но используйте только цифры, буквы и символы подчеркивания — без специальных символов.

Примечание. Если вы меняете префикс таблицы в существующей установке WordPress, вам также потребуется обновить префиксы таблиц в базе данных, выполнить поиск и замену любых ссылок на префикс предыдущей таблицы и заменить их на новый.

2. Требовать SSL для администратора и входа в систему

Если вы хотите защитить информацию для входа администратора, вы можете использовать «FORCE_SSL_ADMIN», чтобы пароли и файлы cookie всегда отправлялись через SSL. Установите «FORCE_SSL_ADMIN» в «true» со следующим кодом в wp-config.php :

 define( 'FORCE_SSL_ADMIN', true );

Примечание. Вам также необходимо настроить SSL на своем сервере, прежде чем ваш сайт будет работать правильно, если для параметра FORCE_SSL_ADMIN установлено значение true.

3. Блокировать внешние запросы URL

Для дополнительной безопасности вы можете запретить запросы внешних URL-адресов с вашего сервера, установив для параметра «WP_HTTP_BLOCK_EXTERNAL» значение «true». With this constant enabled, only your website and localhost will be able to make requests.

 define( 'WP_HTTP_BLOCK_EXTERNAL', true );

If you want to make an exception for specific hosts, you can define WP_ACCESSIBLE_HOSTS with a list of comma separated host names. If you want to allow all subdomains of a host, prefix the domain name with '*.' (eg '*.wordpress.org'). and this will only allow localhost and your blog to make requests.

For example, if you want to make an exception for Google Fonts and all subdomains of WordPress.org, you would add the following to wp-config.php :

 define( 'WP_ACCESSIBLE_HOSTS', 'fonts.googleapis.com,*.wordpress.org' );

4. Disable the plugin and theme file editor

By default, WordPress site admins have access to the plugin and theme file editor feature in the WordPress dashboard. This can be a security risk. An admin that doesn't have a good understanding of how to (and how NOT to) edit these files could attempt to make edits that break your site. A disgruntled admin may intentionally sabotage these files, or a hacker may get access to the admin interface and attempt to edit core files through the plugin and theme file editor.

To disable the plugin and theme file editor define 'DISALLOW_FILE_EDIT' as 'true.'

 define( 'DISALLOW_FILE_EDIT', true );

Note : Some plugins may check user capabilities with “current_user_can('edit_plugins')”. If you have plugins installed that use this function, they may not work correctly when 'DISALLOW_FILE_EDIT' is set to 'true'. If you define 'DISALLOW_FILE_EDIT' as 'true' and you experience issues with a plugin afterward, then this function in the plugin code may be the culprit.

5. Disable plugin and theme updates and installations

If you want to block users from being able to update or install plugins and themes from the WordPress admin area, you can set 'DISALLOW_FILE_MODS' to 'true.' This will also disable the plugin and theme file editor.

 define( 'DISALLOW_FILE_MODS', true );

6. Move core WordPress folders

Keeping core WordPress folders in custom locations can help secure your site against hackers. Especially if hackers are using automated scripts to find the default names of certain files and folders, changing their location can protect your site against these types of attacks.

Move the wp-content folder

Your wp-content directory contains your themes, plugins, and uploads. You can move this outside of the WordPress directory by setting WP_CONTENT_DIR to the full local path of the directory or to the full URL.

File path

 define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/blog/wp-content' );

URL

 define( 'WP_CONTENT_URL', 'http://example/blog/wp-content' );

Note: Do not include the trailing '/' in the file path.

Move the plugins folder

You can protect your plugins by moving the folder location and using the following options to define the path to your new folder:

Set 'WP_PLUGIN_DIR' to the full local directory path.

 define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/blog/wp-content/secureplugins/plugins' );

Set 'WP_PLUGIN_URL' to the full directory URL.

 define( 'WP_PLUGIN_URL', 'http://example/blog/wp-content/secureplugins/plugins' );

If you encounter compatibility issues with plugins, you can set 'PLUGINDIR' to the full local directory path .

 define( 'PLUGINDIR', dirname(__FILE__) . '/blog/wp-content/secureplugins/plugins' );

Note: Do not include the trailing '/' in the file paths.

Move the uploads folder

Moving your uploads folder is a great way to help protect against scripts that may attempt to upload content directly to the default WordPress uploads folder file path. Use the 'UPLOADS' constant to define your path to the uploads folder.

 define( 'UPLOADS', 'blog/wp-content/secureuploads/uploads' );

Note: use a relative path to your uploads folder without the leading '/.'

7. Переопределить права доступа к файлам по умолчанию

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

Чтобы переопределить разрешение файла, вы будете использовать константу «FS_CHMOD_FILE». Чтобы переопределить разрешение каталога, вы будете использовать «FS_CHMOD_DIR».

Файл

 define( 'FS_CHMOD_FILE', ( 0644 & ~ umask() ) );

Каталог

 define( 'FS_CHMOD_DIR', ( 0755 & ~ umask() ) );

Пример предоставления setgid (групповые разрешения):

 define( 'FS_CHMOD_DIR', ( 02755 & ~umask() ) );

Примечание. « 0755» и « 02755 » являются восьмеричными значениями и должны иметь префикс «0».

Расширенные возможности wp-config.php для разработчиков

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

1. Определите URL-адрес WordPress

Константа WP_SITEURL позволяет вам определить адрес, по которому расположены ваши основные файлы WordPress. Вы должны указать http:// или https://, корневой домен и подпапки, в которых находятся основные файлы WordPress. Однако не добавляйте завершающий «/» в конце URL-адреса.

 define( 'WP_SITEURL', 'http://yoursite.com/wordpress' );

Когда вы устанавливаете адрес WP_SITEURL в wp-config.php , значение для «siteurl» в базе данных будет переопределено. Поскольку WP_SITEURL имеет приоритет только над значением siteurl в базе данных, а не перезаписывает его, если вы удалите код WP_SITEURL в файле wp-config.php , будет использоваться исходное значение базы данных для siteurl.

Вы также можете динамически установить URL-адрес сайта на основе хоста сервера или имени сервера.

Хост сервера:

 define( 'WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/path/to/wordpress' );

Имя сервера:

 define( 'WP_SITEURL', 'http://' . $_SERVER['SERVER_NAME'] . '/path/to/wordpress' );

Примечание. Может быть безопаснее использовать SERVER_NAME, чем HTTP_HOST. Использование HTTP_HOST может привести к уязвимостям включения файлов. Кроме того, если ваш сервер использует Apache и настроен как UseCanonicalName «on» , SERVER_NAME не задается динамически, а задается конфигурацией сервера. В этом случае вы захотите использовать SERVER_NAME вместо HTTP_HOST.

2. Определите домашний URL

Ваш домашний URL — это URL-адрес, который вы используете для перехода на главную страницу вашего сайта. Обычно вашим домашним URL будет ваш корневой домен (например, https://mysite.com), даже если вы устанавливаете WordPress в подкаталог.

Если вы предпочитаете включать свой подкаталог как часть вашего домашнего URL-адреса, вы можете использовать WP_HOME, чтобы переопределить значение таблицы wp_options для дома. Это не изменит его в базе данных, поэтому, если вы удалите эту строку из wp-config.php , домашний URL вашего сайта вернется к значению в таблице wp_options .

 define( 'WP_HOME', 'https://mysite.com/wordpress' );

Вам также потребуется добавить следующий код в index.php в корневом каталоге вашего сайта:

 define( 'WP_HOME', 'https://mysite.com' );

Как и в случае с «SERVER_NAME» и «SERVER_HOST», вы также можете динамически установить «WP_HOME». Используйте $_SERVER['HTTP_HOST'] между http:// или https:// и путем к вашему файлу в WordPress (без корневого домена) следующим образом:

 define( 'WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] . '/path/to/wordpress' );

3. Установите домен cookie

Если у вас нестандартная настройка домена, вы можете указать свой домен cookie, используя константу «COOKIE_DOMAIN». Варианты использования для этого включают:

Обслуживание статического контента с поддомена. Если вы обслуживаете статический контент из поддомена, но хотите установить в качестве домена cookie URL-адрес, по которому находится ваш динамический контент, используйте следующее:

 define( 'COOKIE_DOMAIN', 'www.mysite.com' );

Примечание. Вам не нужно указывать http:// или https:// перед именем домена.

Запуск многосайтовой сети. Если вы используете многосайтовую сеть во вложенных папках домена и у вас возникают проблемы с файлами cookie (например, вы получаете сообщение об ошибке «Файлы cookie заблокированы или не поддерживаются вашим браузером. Вы должны включить файлы cookie для использования WordPress»), вы можете убедиться в этом. что файлы cookie принадлежат доменам, из которых они запрашиваются, а не исходят из одного домена, установив для COOKIE_DOMAIN пустое значение.

 define( 'COOKIE_DOMAIN', '' );

4. Включите многосайтовые возможности

WordPress не поставляется с автоматически включенными многосайтовыми возможностями. Большинству установок WordPress эта функция не понадобится. Но если вам это нужно, вы можете легко включить его, используя константу «WP_ALLOW_MULTISITE».

 define( 'WP_ALLOW_MULTISITE', true );

5. Перенаправить несуществующие поддомены или папки

Хотя вы можете разрешить посетителям попадать на страницу 404 по умолчанию, когда контент не найден, может быть удобнее направлять их на пользовательскую страницу. Вы можете легко сделать это через wp-config.php , используя константу NOBLOGREDIRECT.

 define( 'NOBLOGREDIRECT', 'https://mysite.com/custompage' );

6. Не обновляйте глобальные таблицы

Если у вас есть сайт с большими глобальными таблицами или вы используете общие пользовательские таблицы между несколькими установками WordPress (форумы и сайты электронной коммерции могут попадать в эти категории), вы можете запретить WordPress выполнять ресурсоемкие запросы к глобальным таблицам в процессе обновления, установив 'DO_NOT_UPGRADE_GLOBAL_TABLES на «правда».

 define( 'DO_NOT_UPGRADE_GLOBAL_TABLES', true );

7. Управление настройками автообновления

Вы можете отключить автоматическое обновление тем, плагинов и ядра WordPress, особенно если вы находитесь в процессе тестирования сайта разработки или устранения неполадок. Вы также можете выбрать, будет ли ядро ​​WordPress автоматически обновляться только для незначительных обновлений, для всех новых выпусков версий или не будет вообще.

Отключить автообновления

Чтобы полностью отключить все автоматические обновления, установите для параметра «AUTOMATIC_UPDATER_DISABLED» значение «true».

 define( 'AUTOMATIC_UPDATER_DISABLED', true );

Отключить обновления ядра WordPress

Вы можете установить константу «WP_AUTO_UPDATE_CORE», чтобы разрешить автоматические обновления всех выпусков версий, только незначительные обновления или отключить все автоматические обновления ядра.

Отключить все основные обновления

 define( 'WP_AUTO_UPDATE_CORE', false );

Включить все основные обновления

 define( 'WP_AUTO_UPDATE_CORE', true );

Включить основные обновления для второстепенных выпусков

 define( 'WP_AUTO_UPDATE_CORE', 'minor' );

8. Определите константы обновления WordPress

Если у вас возникли проблемы с обновлением WordPress, вам может потребоваться определить некоторые дополнительные константы обновления WordPress, чтобы добраться до корня вашей проблемы. Постарайтесь использовать как можно меньше таких констант для решения вашей проблемы.

Две наиболее распространенные причины, по которым вам может понадобиться определить эти константы в wp-config.php :

  • Ваш хост использует символические ссылки в вашей установке. В этом случае вам может потребоваться определить связанные с путем константы, такие как FTP_BASE, FTP_CONTENT_DIR и FTP_PLUGIN_DIR.
  • В вашей установке PHP используется расширение FTP, несовместимое с некоторыми серверами FTP. Это редкая ситуация, но если вы столкнулись с этим, вам может потребоваться определить FS_METHOD как «ftpsockets».

Ниже приведен список допустимых констант и пример кода для обновлений WordPress:

FS_METHOD Это принудительно использует метод файловой системы. В порядке предпочтения он должен быть установлен на: direct , ssh2 , ftpext или ftpsockets . Изменяйте это только в том случае, если у вас возникли проблемы с обновлением. Если его изменение не решает проблему, вам следует вернуть исходное значение или удалить его. Если другие методы не срабатывают, обычно работают «ftpsockets». определить('FS_METHOD', 'ftpext');
FTP_BASE Полный путь к папке установки WordPress (ABSPATH). определить('FTP_BASE', '/путь/к/wordpress/');
FTP_CONTENT_DIR Полный путь к вашей папке wp-content . определить('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/');
FTP_PLUGIN_DIR Полный путь к папке с вашими плагинами. определить('FTP_PLUGIN_DIR', '/path/to/wordpress/wp-content/plugins/');
FTP_PUBKEY Полный путь к вашему публичному ключу SSH. определить('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub');
FTP_PRIKEY Полный путь к вашему закрытому ключу SSH. определить('FTP_PRIKEY', '/home/username/.ssh/id_rsa');
FTP_USER Определяет либо имя пользователя FTP, либо имя пользователя SSH. Хотя они часто одинаковы, они могут быть разными. Используйте имя пользователя FTP, если вы обновляете по FTP, и имя пользователя SSH, если вы обновляете через SSH. определить('FTP_USER', 'имя пользователя');
FTP_PASS Пароль для имени пользователя, определенного с помощью FTP_USER . Вам не нужно включать это, если вы используете аутентификацию с открытым ключом SSH. определить('FTP_PASS', 'пароль');
FTP_HOST Имя хоста для вашего SSH/FTP-сервера. В некоторых конфигурациях следует использовать «localhost» в качестве значения «FTP_HOST», чтобы избежать ошибок 503 при обновлении плагинов или ядра WordPress. определить('FTP_HOST', 'ftp.mysite.com');
FTP_SSL Этот параметр применяется к настройке «Безопасный FTP», а не SSH SFTP. Установите значение «true» для соединения SSL, только если оно поддерживается базовым транспортом. Это может быть недоступно на всех серверах. SFTP: определить («FTP_SSL», правда); FTP: определить('FTP_SSL', ложь);

9. Создавайте собственные таблицы пользователей и пользовательских метаданных

Константы CUSTOM_USER_TABLE и CUSTOM_USER_META_TABLE используются для назначения пользовательских таблиц для хранения пользовательских данных. Эти настройки лучше всего реализовать при первоначальной настройке WordPress.

 define( 'CUSTOM_USER_TABLE', $table_prefix.'my_users' ); define( 'CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta' );

Примечание . Если вы используете многосайтовую установку WordPress, таблица метаданных пользователей и соответствующие разрешения создаются для базы данных каждого экземпляра WordPress, даже если вы вручную определяете «CUSTOM_USER_META_TABLE». Разрешения добавляются только для первого пользователя, поэтому вам нужно будет управлять разрешениями пользователей для каждого сайта с помощью пользовательской функции или плагина, иначе у вас возникнут проблемы со входом.

Обеспечение доступа администратора с помощью настраиваемых таблиц пользователей и пользовательских метаданных во время настройки мультисайта:

  1. После создания первого сайта и добавления пользовательских таблиц user и usermeta скопируйте файл wp-config.php в следующий экземпляр и измените переменную $table_prefix. Если первый сайт использует «my_usermeta», ваш второй сайт должен использовать что-то другое (например, «site2_usermeta»).
  2. Используйте другой адрес электронной почты для этого следующего экземпляра, чем тот, который вы использовали для первоначальной установки.
  3. После завершения настройки войдите в систему с автоматически сгенерированной учетной записью администратора и паролем.
  4. Повысьте уровень учетной записи, которую вы хотите использовать в качестве администратора, до уровня администратора, а затем выйдите из своей учетной записи администратора WordPress.
  5. Войдите в свою новую учетную запись администратора и удалите автоматически созданную учетную запись.

10. Сохраняйте запросы для анализа

Если вы выполняете и анализируете запросы к базе данных и хотите сохранить их для последующего изучения, вы можете использовать константу «SAVEQUERIES» в файле wp-config.php . Запросы сохраняются в массив, который можно отобразить с помощью кода в файле footer.php . Функция сохранит ваши запросы, какая функция их вызвала и время, которое потребовалось для выполнения запросов.

Эта операция может замедлить работу вашего сайта, поэтому вам следует отключить эту функцию, если вы не занимаетесь активной отладкой.

Добавьте в wp-config.php следующее:

 define( 'SAVEQUERIES', true );

В файле footer.php (в папке вашей темы) добавьте этот код:

 <?php
if ( current_user_can( 'administrator' ) ) {
global $wpdb;
echo "<pre>";
print_r( $wpdb->queries );
echo "</pre>";
}
?>

11. Настройте отладку и регистрацию ошибок

Помните белый экран смерти? Что ж, после выпуска WordPress 5.2 вместо страшного пустого белого экрана теперь вы увидите сообщение об ошибке, в котором говорится: « На сайте возникли технические проблемы. Пожалуйста, проверьте почтовый ящик администратора вашего сайта для получения инструкций». при возникновении фатальной ошибки.

Конечно, если есть фатальная ошибка, вы захотите включить отладку и ведение журнала ошибок, чтобы вы могли устранить проблему. Для этого вам нужно использовать константу «WP_DEBUG» и установить для нее значение «true» (значение по умолчанию — «false»).

 define( 'WP_DEBUG', true );

Установка для параметра «WP_DEBUG» значения «true» позволит печатать ошибки базы данных и повысит уровень отчетов об ошибках, чтобы вы видели предупреждения при использовании устаревших файлов или функций.

Однако, прежде чем вы сможете распечатать эти ошибки, вам необходимо отключить режим восстановления, установив для параметра «WP_DISABLE_FATAL_ERROR_HANDLER» значение «true» и активировав «WP_DEBUG_DISPLAY».

 define( 'WP_DISABLE_FATAL_ERROR_HANDLER', true );   // 5.2 and later define( 'WP_DEBUG_DISPLAY', true );

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

 @ini_set( 'log_errors', 'Off' ); @ini_set( 'display_errors', 'On' ); define( 'WP_DEBUG_LOG', false );

Если в php.ini не настроено ведение журнала ошибок, и вы хотите включить ведение журнала ошибок, вам потребуется немного больше работы.

Журнал ошибок по умолчанию и настройки отображения можно найти в файле php.ini . В некоторых случаях у вас может не быть доступа к этому файлу или ваша хостинговая компания может использовать user.ini или какое-либо другое соглашение об именах. Если у вас нет доступа к этому файлу, попросите свою хостинговую компанию внести эти изменения за вас.

Рекомендуемые настройки ошибок php.ini :

 error_reporting = 4339 display_errors = Off display_startup_errors = Off log_errors = On error_log = /home/mysite.com/logs/php_error.log log_errors_max_len = 1024 ignore_repeated_errors = On ignore_repeated_source = Off html_errors = Off

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

Вы также можете использовать wp-config.php , чтобы включить PHP error_logging и записывать их в указанный вами файл. Убедитесь, что для WP_DEBUG установлено значение true, и поместите следующее выше любых команд require_once или include :

 @ini_set( 'log_errors', 'On' ); @ini_set( 'display_errors', 'Off' ); @ini_set( 'error_log', '/home/mysite.com/logs/php_error.log' ); /* That's all, stop editing! Happy blogging. */

Для получения дополнительных примеров методов регистрации ошибок вы можете ознакомиться с предложениями Майка Литтла в списке адресов электронной почты wp-hackers или в группе пользователей WordPress в Манчестере.

Есть несколько важных моментов, о которых следует помнить при реализации настроек отладки и ведения журнала:

  1. Если для WP_DEBUG установлено значение false, WP_DEBUG_DISPLAY и WP_DEBUG_LOG не будут работать.
  2. Если для WP_DEBUG установлено значение «true», другие константы будут активны только в том случае, если для них также установлено значение «true». Сюда входят директивы в вашем файле php.ini , а не только операторы в wp-config.php . Итак, если php.ini устанавливает ('display_errors' = 'Off'); но определить('WP_DEBUG_DISPLAY', правда); установлен в вашем файле wp-config.php , ошибки не будут отображаться, потому что настроенное поведение PHP будет иметь приоритет.
  3. Чтобы ваши директивы работали должным образом, вы должны явно определить как параметры php.ini , так и соответствующие им параметры wp-config.php .

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

 @ini_set( 'log_errors', 'On' ); @ini_set( 'display_errors', 'Off' ); define( 'WP_DISABLE_FATAL_ERROR_HANDLER', false ); // 5.2 and later define( 'WP_DEBUG', false ); define( 'WP_DEBUG_LOG', false ); define( 'WP_DEBUG_DISPLAY', false );

Примечание. Если вы используете файл журнала отладки по умолчанию в расположении по умолчанию /wp-content/debug.log , вам нужно ограничить доступ к файлу только SFTP. Установите права доступа к файлу журнала на 600 и добавьте следующее в файл . htaccess в вашем корневом каталоге:

 <Files debug.log> Order allow,deny Deny from all </Files>

12. Определите тип среды WordPress

Если вы настраиваете локальные сайты, сайты разработки или промежуточные сайты, может быть полезно определить «WP_ENVIRONMENT_TYPE». Если эта константа не определена, типом среды по умолчанию является рабочая среда. Допустимые значения: local , development , staging и production .

 define( 'WP_ENVIRONMENT_TYPE', 'staging' );

Примечание. Если для параметра «WP_ENVIRONMENT_TYPE» установлено значение «разработка», для параметра WP_DEBUG будет автоматически установлено значение «true», если оно еще не определено в wp-config.php .

13. Отладочные сценарии

Если вы устраняете проблемы с JavaScript и CSS, вы можете использовать константу SCRIPT_DEBUG, чтобы заставить WordPress использовать разрабатываемые версии скриптов и таблиц стилей. Файлы в wp-includes/js , wp-includes/css , wp-admin/js и wp-admin/css будут загружены вместо минифицированных версий. Чтобы просмотреть эти разрабатываемые версии, установите для параметра SCRIPT_DEBUG значение true.

 define( 'SCRIPT_DEBUG', true );

14. Отключить конкатенацию JavaScript

В WordPress файлы JavaScript упорядочиваются, чтобы ускорить загрузку экранов администратора. Если вы получаете ошибки JavaScript в области администрирования WordPress, вы можете отключить объединение скриптов, установив для параметра «CONCATENATE_SCRIPTS» значение «false».

 define( 'CONCATENATE_SCRIPTS', false );

Это окончательное руководство по wp-config.php ?

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

wp-config.php Часто задаваемые вопросы

Что делать, если я не могу найти свое местоположение wp-config.php ?

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

Файлзилла

Если вы используете Filezilla для доступа к своему сайту через SFTP, вы можете щелкнуть значок бинокля вверху, чтобы выполнить поиск файлов. Найдите «wp-config.php» в самой верхней папке, к которой у вас есть доступ, если wp-config.php находится в папке вне корневого каталога. Появление результатов может занять несколько минут, так как вы будете искать во всех папках на вашем сервере.

форма поиска в Filezilla

cPanel

Поиск wp-config.php в cPanel довольно прост. В cPanel вашего хоста нажмите « Диспетчер файлов» в разделе « Файлы» .

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

Введите «wp-config.php» в поле поиска и нажмите «Перейти» .

форма поиска в cpanel

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

Что делать, если мой файл wp-config.php недоступен для записи?

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

Если ваш хост позволяет вам вносить изменения в эти настройки, вы сможете изменить права доступа к файлам и папкам через SFTP или cPanel.

SFTP

В этом примере мы используем Filezilla.

1. Подключитесь к вашему серверу через SFTP.

2. Найдите файл wp-config.php . По умолчанию он находится в корневой папке вашей установки WordPress, но может находиться и в другом месте.

3. Щелкните правой кнопкой мыши файл wp-config.php и выберите «Права доступа к файлу» .

редактирование прав доступа к файлам

Убедитесь, что права доступа к файлу установлены на 640 или 644.

установка прав доступа к файлам 644

Если wp-config.php находится в папке вне корневой папки, дважды проверьте, установлены ли права доступа к папке 750 или 755.

установка прав доступа к файлам 755

Примечание. Некоторые платформы хостинга могут потребовать от вас использования других значений разрешений. Для файлов попробуйте 664 и 666. Для папок попробуйте 775.

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

Узнайте больше о правах доступа к файлам в WordPress.

Могут ли плагины редактировать мой файл wp-config.php ?

Если ваши права доступа к папке и файлу настроены на доступ для записи (750, 755 или 775 для папок; 640, 644, 664 или 666 для файлов), тогда плагины должны иметь возможность писать в wp-config.php . Если вы хотите, чтобы плагины не могли писать в ваш файл wp-config.php , вы можете установить более строгие права доступа к файлу 440 или 400. Это также не позволит другим пользователям на вашем сервере читать wp-config.php .

Что такое wp-config-sample.php ?

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

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

Содержимое wp-config-sample.php:

 <?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the installation. * You don't have to use the web site, you can copy this file to "wp-config.php" * and fill in the values. * * This file contains the following configurations: * * * Database settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://wordpress.org/support/article/editing-wp-config-php/ * * @package WordPress */ // ** Database settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' ); /** Database username */ define( 'DB_USER', 'username_here' ); /** Database password */ define( 'DB_PASSWORD', 'password_here' ); /** Database hostname */ define( 'DB_HOST', 'localhost' ); /** Database charset to use in creating database tables. */ define( 'DB_CHARSET', 'utf8' ); /** The database collate type. Don't change this if in doubt. */ define( 'DB_COLLATE', '' ); /**#@+ * Authentication unique keys and salts. * * Change these to different unique phrases! You can generate these using * the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}. * * You can change these at any point in time to invalidate all existing cookies. * This will force all users to have to log in again. * * @since 2.6.0 */ 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' ); /**#@-*/ /** * WordPress database table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_'; /** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the documentation. * * @link https://wordpress.org/support/article/debugging-in-wordpress/ */ define( 'WP_DEBUG', false ); /* Add any custom values between this line and the "stop editing" line. */ /* That's all, stop editing! Happy publishing. */ /** Absolute path to the WordPress directory. */ if ( ! defined( 'ABSPATH' ) ) { define( 'ABSPATH', __DIR__ . '/' ); } /** Sets up WordPress vars and included files. */ require_once ABSPATH . 'wp-settings.php';