Советы по настройке wp-config

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

Первое: бэкап!

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

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

Готовы? Поехали!

Скорость: Отключите сохраненные версии… Сейчас!

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

define('WP_POST_REVISIONS', false );

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

define('WP_POST_REVISIONS', 2 );

Скорость: Установите домен Cookie

Если вы обрабатываете статический контент (например, загрузки медиа) поддоменом, хорошей идеей будет установить «cookie domain». Если вы сделаете это, cookies не будут отправляться каждый раз, когда запрашивается статический контент.

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

Совет: чтобы обрабатывать медиа загрузки поддомена, просто укажите в последних двух текстовых полях на странице Media Options путь (например, /home/myblog/public_html/mysubdomain) и URL (например http://mysubdomain.myblog.com/) вашего поддомена.

Скорость: Измените метод файловой системы

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

define('FS_METHOD', 'direct');

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

Безопасность: Запрет доступа к файлу wp-config.php

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

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

Просто добавьте это в ваш .htaccess файл и все готово!

Безопасность: SSL в панели администратора

SSL на вашем сервере включен? Отлично! Вы можете заставить WordPress использовать безопасное соединение при авторизации с помощью этой строки кода:

define('FORCE_SSL_LOGIN', true);

И если вы очень подозрительны в плане безопасности (что на самом деле хорошо), вы можете заставить WordPress использовать SSL на каждой странице администратора, чтобы все, что вы делаете там, делалось через шифрованное соединение:

define('FORCE_SSL_ADMIN', true);

Дополнительную информацию о том, как настроить SSL, вы можете найти в WordPress Codex на странице Administration Over SSL.

Безопасность: Изменение префикса базы данных

Если у WordPress есть дыра в безопасности, которая позволяет злоумышленникам использовать метод взлома, известный как «SQL инъекция», они могут легко использовать стандартные префиксы таблиц вашей базы данных WordPress чтобы удалить их. Но если у вас префиксы таблиц отличные от стандартных (wp_), они не смогут их угадать, не так ли?

Так что, устанавливая новый сайт WordPress, смените значение по умолчанию на странице установки или смените следующую строку в файле wp-config.php:

$table_prefix  = 'wooh00yeah_';

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

Безопасность: Добавьте ключи безопасности… Сейчас!

Давайте просто прочтем в WordPress Codex:

Простыми словами, секретный ключ — это пароль с элементами, которые усложняют подбор достаточного количества вариантов для взлома. Пароль типа «пароль» или «тест» простой и может быть легко взломан. Чтобы подобрать случайный, непредсказуемый пароль типа «88a7da62429ba6ad3cb3c76a09641fc» потребуются годы.

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

Другое: Изменение интервала автосохранения

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

define('AUTOSAVE_INTERVAL', 240 ); // the value should be in seconds!

Другое: Перенесите свой WordPress сайт легко

WordPress полон сюрпризов и это один из них. Если вам когда-то нужно будет перенести свой сайт на другой домен (или новый поддомен, или новую папку), определите эту константу в вашем файле wp-config.php перед переносом ваших файлов и базы данных:

define('RELOCATE',true); // We're not done yet!

После установки этой величины и переноса ваших файлов и базы данных, авторизуйтесь с вашими данными WP на yournewwebsite.com/login.php и после этого проверьте, изменился ли домашний URL на странице Общих настроек. После подтверждения изменений, удалите эту константу из вашего файла wp-config.php. Этот простой трюк в WordPress убережет вас от редактирования базы данных вручную.

Совет: хотя это буквально «переносит» ваш сайт, оно не влияет на жестко закодированные ссылки в вашем контенте. Чтобы изменить их, вы должны использовать плагин типа Search Regex и заменить старые ссылки новыми.

Другое: Отключите редактирование файлов плагина и темы

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

define('DISALLOW_FILE_EDIT',true);

Более того, вы можете также отключить установку новых тем и плагинов, и их обновление:

define('DISALLOW_FILE_MODS',true);

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

Другое: Включение WP_DEBUG при разработке

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

define('WP_DEBUG',true);

Иногда это просто замечательно, видеть, какие простые ошибки вы можете сделать при разработке!

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
  • Дмитрий

    Дрогой автор! Здесь тоже кое-где есть замена знаков PHP на  кодировку символов  html

    • ADv

      Спасибо, поправлю завтра утром.

  • Дмитрий

    Ваш труд оценен, востребован и полезен.  Спасибо!

Scroll To Top