Подключение к Worpdress

Для решения проблемы нехватки дискового пространства при хранении больших объемов статичного контента и долгой загрузки страниц разработчики CMS интегрируют собственные продукты с облачными хранилищами.

Преимущества таких решений:

  • хранение больших объемов данных в «облаках» обходится дешевле по сравнению с традиционным хранением;
  • использование «облаков» позволяет эффективно решить проблему доступности данных: неполадки в работе облачных сервисов случаются значительно реже, чем падения традиционных серверов;
  • при смене хостинг-провайдера отпадает необходимость переноса большого количества файлов вручную; благодаря использованию сетей доставки контента (CDN) скорость доставки файлов пользователям существенно увеличивается;
  • так как пользователи скачивают файлы не с сайта, а через CDN, нагрузка на серверы снижается;
  • провайдеры облачных услуг гарантируют сохранность данных клиентов: так, в нашем хранилище все загружаемые данные одновременно копируются на несколько независимых серверов, а недостающие данные восстанавливаются автоматически.

Обратите внимание! Для PHP версии выше 7.0 нижеописанные методы не работают, вместо них используйте плагины для подключения по OpenStack Swift протоколу, например, updraftplus.

Плагин Selectel Storage Upload

Плагин Selectel Storage Upload предназначен для синхронизации файлов, помещенных в медиабиблиотеку WordPress, с нашим облачным хранилищем. Его можно установить как через графический интерфейс WordPress (меню Плагины→ Добавить новый), так и вручную (скачать можно здесь).

По завершении установки Selectel Storage Upload будет добавлен в список доступных плагинов. Активируйте плагин чтобы приступить к работе. Для настройки плагина выполните следующие действия:

  1. Откройте хранилище под своей учётной записью и создайте контейнер, в котором будут храниться медиафайлы.
  2. Создайте дополнительного пользователя, который будет иметь доступ только к этому контейнеру.
  3. В меню WordPress выберите пункт НастройкиSelectel Upload.
  4. Откроется следующая страница:
  5. Укажите реквизиты доступа (имя и пароль созданного дополнительного пользователя), а также имя контейнера для медиафайлов. Путь к медиафайлам на локальной машине, а также URL авторизации в хранилище устанавливаются по умолчанию.
  6. Нажмите кнопку Сохранить изменения.

Можно настроить плагин так, что все загружаемые файлы будут сразу же помещаться в хранилище, минуя медиабиблиотеку, и находиться только там. Для этого нужно установить флажок Хранить файлы только в Selectel Storage. К контейнеру, где будут храниться медиафайлы, должен быть обязательно прикреплен домен. В поле Полный URL-путь к файлам нужно будет указать адрес этого домена (например, http://uploads.example.com). Можно раздавать файлы и без прикрепления домена. В поле Полный URL-путь к файлам в этом случае нужно будет указать адрес вида http://xxx.selcdn.com/имя_контейнера.

Плагин W3 Total Cache

Для ускорения и оптимизации работы сайтов на Wordpress существует целый ряд специализированных плагинов, самым известным из которых является W3 Total Cache. С его помощью и используя наше облачное хранилище можно организовать раздачу статики через CDN. После установки плагина проверьте конфигурационные файлы.

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

/** Enable W3 Total Cache */
define('WP_CACHE', true); // Added by W3 Total Cache

Файл .htaccess должен выглядеть так (соответствующие изменения в случае необходимости внесите вручную):

#BEGIN W3TC Browser Cache
<IfModule mod_deflate.c>
   <IfModule mod_headers.c>
       Header append Vary User-Agent env=!dont-vary
   </IfModule>
   <IfModule mod_filter.c>
       AddOutputFilterByType DEFLATE text/css text/x-component application/x-j$
   <IfModule mod_mime.c>
       # DEFLATE by extension
       AddOutputFilter DEFLATE js css htm html xml
   </IfModule>
   </IfModule>
</IfModule>
# END W3TC Browser Cache
# BEGIN W3TC CDN
<FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css)$">
<IfModule mod_headers.c>
   Header set Access-Control-Allow-Origin "*"
</IfModule>
# END W3TC CDN

Сохраните внесенные изменения и перейдите непосредственно к настройке плагина:

  1. После установки W3 Total Cache в главном меню появится новый пункт Performance.
  2. Выберите Performance → General Settings.
  3. На открывшейся странице перейдите в раздел CDN.
  4. Установите флажок Enabled.
  5. Выберите в списке CDN Type пункт Self Hosted/File Transfer Protocol Upload:
  6. Сохраните настройки.
  7. Выберите в меню пункт Performance → CDN.
  8. Откроется страница настроек. Обратите внимание на поле Configuration:
  9. В поле FTP hostname укажите ftp.selcdn.ru, в полях FTP Username и FTP Password — имя пользователя и пароль (помните о том, что для работы с FTP лучше создать отдельного пользователя с ограниченными правами доступа).
  10. В поле FTP path укажите имя контейнера, в котором будут храниться статические файлы сайта, перед именем нужно поставить слэш (например, /mysite).
  11. В поле Replace your hostname with: введите каноническое имя, которое будет отображаться в адресах загружаемых файлов вместо «***.selcdn.com». При загрузке сайта ссылки на изображение будут содержать CNAME, а не фактический домен.

Чтобы сайт работал еще быстрее, можно указать несколько CNAME-записей, каждая их которых будет закреплена за определенным типом контента. Установив нужные настройки, нажмите кнопку Save All Settings. Внутри указанного контейнера будет автоматически создана папка /wp-content/upload, в которой будет храниться весь статичный контент.

Резервное копирование сайта на WordPress

UpdraftPlus — простой и удобный в обращении плагин для создания резервных копий сайтов на Wordpress, поддерживающий протокол OpenStack Swift.

Перед установкой этого плагина выполните ряд подготовительных действий:

  1. Создайте в хранилище контейнер, в который будут помещаться резервные копии.
  2. Создайте специального пользователя, который будет иметь доступ только к этому контейнеру.
  3. На сервере создайте папку в директории wp-content для временного хранения резервных копий, доступную для записи.

Установите UpdraftPlus:

  1. Выберите в меню Плагины пункт Добавить новый.
  2. После активации плагина в меню Настройки будет добавлен пункт Резервные копии Updraft Plus.
  3. Выберите этот пункт и перейдите на вкладку Настройки.
  4. В списке Выберите ваше удаленное хранилище выберите OpenStack Swift.
  5. Укажите реквизиты доступа к хранилищу.
  6. В поле URI для авторизации укажите https://api.selcdn.ru/v2.0.
  7. В поле Арендатор (так в русской версии плагина передается термин tenant) введите номер учетной записи.
  8. Введите в соответствующих полях имя созданного дополнительного пользователя и его пароль.
  9. В поле Контейнер укажите имя контейнера, в котором будут храниться резервные копии.
  10. После заполнения всех полей нажмите кнопку Проверить настройки OpenStack.
  11. В случае успешной проверки будет выведено сообщение о том, что плагин получил доступ к контейнеру и может создавать в нём файлы.
  12. Перейдите в раздел Расширенные/отладочные настройки и нажмите Показать экспертные настройки.
  13. В поле Директория резервного копирования введите имя созданной ранее папки для временного хранения резервных копий.

Плагин настроен для работы с хранилищем. На вкладке Настройки также можно указать, какие именно файлы следует включать в резервную копию и с какой периодичностью нужно осуществлять резервное копирование. Установив все необходимые параметры, нажмите кнопку Сохранить настройки и перейдите на вкладку Текущий статус. Для запуска резервного копирования нажмите кнопку Создать РК сейчас.

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