Come caricare i file direttamente su S3 senza utilizzare l'archiviazione locale? [chiuso]


18

Sto cercando un plugin per WordPress che mi consenta di caricare i file direttamente

Siamo un negozio di sviluppo che co-crea attivamente siti Web CMS con i clienti. Ciò significa che spesso stiamo ripetendo i siti sui quali i clienti utilizzano e caricando i file. Nei nostri progetti, archiviamo il database e il codice in un repository git che semplifica lo spostamento del codice dalla produzione allo sviluppo locale.

Il problema con questo processo è che alcuni dei file caricati dai client sono molto grandi e non vogliamo caricarli nel repository, ma vorremmo comunque essere in grado di accedervi come se li avessimo.

Quindi, ho pensato, invece di spostare i file in giro potremmo semplicemente usare una terza parte che avrebbe ospitato i file e avremmo semplicemente accedervi. Potrei usare Amazon S3 con un plug-in di backup, ma preferirei caricare su S3 tramite l'interfaccia di amministrazione.

La seconda ragione per volere questo plugin è che ospitiamo blog che hanno 20-30 GB di immagini ad alta risoluzione. Preferirei non conservare questi file sul nostro server perché lo spazio sul server è costoso. È meno costoso utilizzare Amazon S3 per ospitare i file.

In conclusione, esiste un plug-in che consente di utilizzare il caricamento di WordPress Media, ma in realtà ignorerà l'archiviazione locale e caricherà i file direttamente sul server?

Grazie in anticipo per le tue risposte!



2
Al posto di una risposta completa, che al momento non posso lasciare: Salvataggio di WordPress Media su Amazon S3 (Teaser)
Annika Backstrom

@ v0idless, il tuo link sembra che farà il lavoro. Dovrò provarlo.
Tarasm

@AdamBackstrom, il tuo link sembra esattamente lo stesso scenario che ho io, ma non sono sicuro della sua soluzione. Dovrò dare un'occhiata più da vicino.
Tarasm

Perché non lasciare risposte?
Tarasm

Risposte:


5

Avevo lo stesso requisito: il mio VPS mancava di spazio su disco, ma volevo ancora gestire le foto con WordPress. tantan-s3 non è bastato, dal momento che una copia di ogni foto è archiviata localmente.

È possibile astrarre l'archiviazione dei file utilizzando i wrapper di flusso PHP, ma un paio di pezzi di WordPress core sono incompatibili. Quindi questa è la risposta breve: WordPress in modo nativo non supporta abbastanza funzionalità per renderlo possibile.


Andando avanti: il ticket WordPress n. 18543 si occupa del core di patching per supportare i wrapper di stream in imagejpeg()(e altre funzioni GD) e wp_mkdir_p().

Zend_Service_Amazon_S3_Stream fornisce un wrapper di flusso S3, ma tende a essere inefficiente, richiedendo gli 8192 byte predefiniti alla volta anziché bufferarne di più, generando un numero enorme di richieste nel processo. Sono stato seduto su questo per mesi, quindi potrei anche rilasciare le mod in libertà . Questa patch funziona con Zend Framework 1.11.10.

Il completamento del cerchio è un plugin per tradurre il percorso di caricamento in S3 .

Mi piacerebbe vedere qualcuno portare questo oltre il mio, ma non andrà lontano fino a quando WordPress core non migliorerà il supporto dello stream.


1
Se hai un VPS, perché non montare un bucket S3 e impostare quel percorso come directory di upload?
v0idless

@ v0idless, questa è un'ottima domanda. Non sarebbe portatile, ma penso che funzionerebbe. Montare il bucket richiederebbe comunque il plug-in per la traduzione dell'URL di Adam. Ho ragione?
Tarasm

Le opzioni multimediali di WordPress ti consentono di impostare la directory di upload: Store uploads in this folderche dovrebbe essere sufficiente per un bucket montato. Penso che il plugin di Adam aggiunge il protocollo s3: // al percorso di upload per il supporto dello stream.
v0idless

@tarasm Credo pre_option_upload_url_pathsia il filtro importante per il percorso di download.
Annika Backstrom,

@AdamBackstrom Penso che sia vicino alla risposta finale quanto sta per arrivare a questo punto. Saresti così gentile da aggiornare questa domanda se questa situazione cambia?
Taramino,

2

Scopri WP2Cloud plugin. I file caricati non vengono archiviati localmente: vanno direttamente su Amazon S3.

Inoltre, se lo desideri, puoi utilizzare Amazon S3 per archiviare tutto il contenuto del sito Web, non solo i caricamenti. In questo modo risolvi permanentemente il problema di backup e ottieni la flessibilità di ospitare il sito Web ovunque tu voglia senza spostare i dati.


2

C'era un plugin chiamato WP di sola lettura . Che caricherà i file su Amazon S3. Lo sto usando sul mio server Heroku. Perché non puoi archiviare file statici sul server heroku.



0

Esiste un plug-in che può servire a questo scopo, ti consente di caricare i file direttamente su S3 dal tuo pannello di amministrazione o utilizzare lo shortcode per incorporare un browser S3 nelle prime pagine per consentire agli utenti di caricare file su S3, puoi controllare chi può caricare, cancellare, creare cartelle ecc. è molto utile.

Ecco il link: WordPress S3 Browser

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.