Multisite, загружайте изображения прямо на Amazon S3

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

Есть ли способ изменить стандартную сетевую тему (пользователи ограничены использованием 1 стандартной темы), чтобы все изображения загружались на мою учетную запись S3, а затем отображались как обычно в загружаемом медиаплеере WordPress?

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

Если вы работаете на выделенном Linux-сервере и вам удобнее работать с командной строкой, вы можете установить s3fs . Это программа, которая позволяет вам смонтировать ваш ковш Amazon s3 как каталог на вашем сервере.

В стандартной многоузловой среде загрузка мультимедиа для всех сайтов, кроме основного сайта, хранится в каталоге blogs.dir внутри каталога wp-content. В настоящее время я запускаю многоуровневую установку, где blogs.dir – это мой монтируемый s3-ведро. Вот обзор …

  1. Переименуйте папку blogs.dir в _blogs.dir. (Примечание: это временно сделает все мультимедийные файлы с несколькими файлами недоступными).
  2. Создайте новый каталог с именем blogs.dir.
  3. Установите и используйте s3fs для монтирования своего ведра s3 в каталог blogs.dir.
  4. Скопируйте содержимое папки _blogs.dir в новый blogs.dir. Это скопирует все файлы и папки непосредственно в ваш ведро s3. (Это может занять некоторое время в зависимости от количества изображений).
  5. Как только он будет завершен, перейдите на домашнюю страницу одного из ваших пользовательских сайтов (а не на ваш основной сайт) и убедитесь, что WordPress способен читать и отображать изображения).
  6. Убедитесь, что ковш установлен при загрузке, если вам необходимо перезагрузить сервер. В linux это часто достигается добавлением команды s3fs в файл / etc / fstab.

Как и во всем, есть плюсы и минусы этой установки.

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

Недостатком является то, что он делает загрузку нового файлового интерфейса немного медленнее на бэкэнд, и он может также немного ускорить чтение файлов (если вы не можете использовать .htaccess переписать правила в apache, чтобы перенаправить URL-адрес медиафайла непосредственно на s3, что возможно, но выходит за рамки этого ответа).

Надеюсь это поможет. Посетите s3fs для документации по установке и использованию s3fs.