Медиафайлы WordPress можно хранить в облачном хранилище S3: изображения, видео и документы будут отдаваться из хранилища, а место на диске хостинга останется свободным.
Что понадобится
Access Key и Secret Key из личного кабинета, созданный бакет с публичным доступом на чтение и доступ к административной панели WordPress.
Шаг 1. Установка плагина
Для работы с S3-совместимыми хранилищами подходят плагины WP Offload Media Lite, Media Cloud или S3 Uploads. В инструкции разберём WP Offload Media Lite.
- В административной панели откройте «Плагины» → «Добавить новый».
- Найдите WP Offload Media Lite и установите плагин.
- Активируйте плагин.
Шаг 2. Указание ключей доступа
Ключи задаются в файле wp-config.php. Откройте файл и добавьте перед строкой с комментарием об окончании настроек:
define( 'AS3CF_SETTINGS', serialize( array(
'provider' => 'aws',
'access-key-id' => 'ВАШ_ACCESS_KEY',
'secret-access-key' => 'ВАШ_SECRET_KEY',
) ) );
Хранение ключей в файле конфигурации безопаснее, чем в базе данных.
Шаг 3. Настройка хранилища
- Откройте «Настройки» → «Offload Media».
- В разделе провайдера выберите вариант с указанием собственного адреса и введите s3.hostflyby.net.
- Укажите регион us-east-1 и имя бакета.
- Включите параметр «Copy Files to Bucket», чтобы новые загрузки уходили в хранилище.
- Включите «Rewrite Media URLs», чтобы ссылки на файлы вели в хранилище.
Шаг 4. Перенос существующих файлов
Плагин переносит только новые загрузки. Для переноса медиатеки используйте инструмент миграции в разделе Offload Media или загрузите каталог wp-content/uploads в бакет через S3cmd:
s3cmd sync /путь/к/сайту/wp-content/uploads/ s3://имя-бакета/wp-content/uploads/ --acl-public
Частые ошибки
Изображения не отображаются после переноса. Бакет закрыт на чтение. Откройте публичный доступ или настройте политику на чтение объектов.
Плагин не видит бакет. Проверьте адрес endpoint и регион. Некоторые плагины требуют указывать адрес с протоколом https.
Новые загрузки остаются на сервере. Проверьте, что включён параметр Copy Files to Bucket и права на запись у ключа доступа.
