Laden Sie Bilder mit mehreren Standorten direkt auf Amazon S3 hoch

Ich habe ein Multisite-Netzwerk erstellt, aber ich habe bemerkt, dass Leute eine Menge Bilddateien hochladen, die meinen Serverraum verstopfen.

Gibt es eine Möglichkeit, das Standard-Netzwerk-Design zu ändern (Benutzer können nur ein Standard-Design verwenden), so dass alle Bilder auf meinen S3-Account hochgeladen und dann wie gewohnt im WordPress Media-Uploader angezeigt werden?

Ich möchte dies automatisch tun können, da alle Benutzer meines Netzwerks manuell ein Plugin installieren müssen, da einige von ihnen nicht gerade technisch versiert sind.

Solutions Collecting From Web of "Laden Sie Bilder mit mehreren Standorten direkt auf Amazon S3 hoch"

Wenn Sie auf einem dedizierten Linux-Server arbeiten und mit der Befehlszeile vertraut sind , könnten Sie s3fs installieren. Dies ist ein Programm, mit dem Sie Ihren Amazon s3 Bucket als Verzeichnis auf Ihrem Server mounten können.

In der standardmäßigen Umgebung mit mehreren Standorten werden Medienuploads für alle Websites außer der Hauptwebsite im Verzeichnis blogs.dir im Verzeichnis wp-content gespeichert. Ich führe gerade eine Multisiteinstallation durch, in der das blogs.dir IS gemounteter s3 Eimer ist. Hier ist ein Überblick …

  1. Benennen Sie den Ordner blogs.dir in _blogs.dir um. (Hinweis: Dadurch werden vorübergehend alle Multimedia-Dateien für mehrere Sites nicht zugänglich).
  2. Erstellen Sie ein neues Verzeichnis mit dem Namen blogs.dir.
  3. Installieren und verwenden Sie s3fs, um Ihren s3-Bucket in das Verzeichnis blogs.dir einzubinden.
  4. Kopieren Sie den Inhalt des _blogs.dir-Ordners in das neue blogs.dir. Dadurch werden alle Dateien und Ordner direkt in Ihren s3-Bucket kopiert. (Je nach Anzahl der Bilder kann es eine Weile dauern).
  5. Sobald es fertig ist, überprüfen Sie die Homepage einer Ihrer Benutzer-Sites (nicht Ihre Haupt-Website) und stellen Sie sicher, dass WordPress die Bilder lesen und anzeigen kann).
  6. Stellen Sie sicher, dass der Bucket beim Booten gemountet ist, falls Sie Ihren Server neu starten müssen. In Linux wird dies oft durch Hinzufügen eines s3fs-Befehls zur Datei / etc / fstab erreicht.

Wie bei allem gibt es Vor-und Nachteile dieser Einrichtung.

Wenn ein Benutzer eine Mediendatei auf seine Multisite hochlädt, wird sie direkt in Ihrem s3-Bucket gespeichert. Und wenn die Medien gefragt sind, wird es aus dem Eimer gezogen. Wenn ein Benutzer ein Bild im WordPress-Admin bearbeitet, werden die Änderungen erneut direkt in Ihrem S3-Bucket gespeichert.

Der Nachteil ist, dass das Hochladen der neuen Dateischnittstelle im Backend etwas langsamer wird und das Lesen der Dateien möglicherweise etwas langsamer wird (es sei denn, Sie können die .htaccess-Umschreibungsregeln im Apache verwenden, um die Medien-URLs direkt an s3 umzuleiten.) was möglich ist, aber über den Rahmen dieser Antwort hinaus).

Hoffe das hilft. Eine Dokumentation zur Installation und Verwendung von s3fs finden Sie auf der s3fs.