Come spostare i Media sul sito WordPress in cloud con Amazon S3

Come spostare i Media sul sito WordPress in cloud con Amazon S3

Il servizio storage Amazon S3 in cloud è un’ottima risorsa per WordPress. Offre spazio di storage, archiviazione veloce e accesso distribuito. Offre un backup automatico che permette di trasferire dati o di effettuare test sui siti web senza incorrere in problemi.

Per scrivere questo tutorial abbiamo approfittato di un post di premium.wpmudev.org, per accompagnarti passo per passo nel download di contenuti media su Amazon S3 usando WordPress e alcuni plugin.
Inoltre, ti spiegheremo come utilizzare Amazon CloudFront per eseguire file tramite CDN così da velocizzare il download e il tempo di latenza del tuo sito web.

Detached Media

I Detached Media possono semplificare la vita. Immagina questa situazione: hai bisogno di migrare il tuo sito Web su un altro server. Se hai questa necessità significa che il tuo sito web è diventato troppo grande per lo spazio che hai a disposizione. Probabilmente possiedi tante immagini.

All’interno di WordPress, ogni tipo di contenuto occupa pochissimo spazio, post, temi e plugin. Anche per un blog molto ampio può essere sufficiente un database di circa 2-3 MB.
Probabilmente i tuoi temi e plugin occupano 10-30 MB, ma molti di questi non devono essere spostati, semplicemente deve essere effettuato nuovamente il download.

Ogni volta che carichi un’immagine su WordPress, vengono create almeno altre tre versioni (a meno che le sue dimensioni non siano molto piccole). Ciò significa che per ogni immagine di cui fai l’upload, in realtà, avrai nel tuo server altre quattro immagini. Quindi, per sole 100 immagini, avrai 400 immagini. Naturalmente, in questo modo è facile che si superino i 400-600 MB.

Grazie a tool di sviluppo performanti, potresti sì trasferire il tutto in WordPress in un pochi minuti, ma per poi passare ore sui contenuti media. Inoltre,si aggiungerebbero altri inconvenienti come problemi di timeout di upload/download.

Invece, se si utilizza un servizio di storage basato su cloud, tutti i file multimediali verranno forniti dal cloud. Non ci sarà bisogno quindi di pensare alla cartella di upload. In questo modo la migrazione di un sito molto grande potrebbe richiedere solo alcuni minuti.

Un altro benefit che si va ad aggiungere è la possibilità di effettuare test. Se gli sviluppatori utilizzano un ambiente locale per testare, le immagini funzioneranno bene in quanto verranno prelevate direttamente dai server Amazon, a differenza di WordPress che deve ricercarle su un disco rigido locale.

Scalabilità

AWS ha una capacità enorme. Non è possibile creare un sito che i server di Amazon non siano in grado di supportare. Basti pensare a Netflix, ed è solo uno dei clienti che si rivolge ad Amazon. La possibilità di scala che offre non può essere sottovalutata.

Prezzo

Ulteriore vantaggio di scegliere AWS sono i prezzi molto contenuti. Inoltre approfittando del servizio aCloud potrai semplificarne la gestione economica che può risultare complessa.

Sicurezza e controllo

La sicurezza di Amazon è estesa anche grazie all’affiancamento di strumenti innovativi per la protezione dei dati. Inoltre, il provider offre soluzioni integrative con lo storage S3, come, solo per fare un esempio quella di Check Point Software Technologies.

Tutorial

Per iniziare avrai bisogno di:

Account Amazon S3

Con l’ account S3, avrai accesso alla console di gestione AWS, dove troverai l’elenco di tutti i servizi Amazon disponibili. Clicca su S3 e accedi all’area di gestione S3.

Wordpress Amazon S3 schermata 1

 

L’interfaccia è molto simile a un file system. I bucket sono delle directory di primo livello, in grado di contenere al loro interno qualsiasi numero di file e directory.
Il nome del bucket che sceglierai dovrà essere univoco in S3 come in tutti i servizi AWS quindi non utilizzare nomi molto generici.

Credenziali di sicurezza

Nella parte superiore della barra di navigazione, seleziona account name e poi sulla voce di menu security credential.
Avrai accesso alla Identity Access Management o IAM, dove creerai un nuovo utente attraverso la funzione Create New Users. L’utente sarà responsabile dell’interazione tra Amazon e il tuo sito web.

 

Wordpress Amazon S3 schermata 2

Scegli Users nel sidebar a sinistra e quindi clicca sul pulsante blu Create New Users. E’ possibile anche creare contemporaneamente più utenti.

Creiamo un singolo utente: amazontestuser. Assicurati che la casella Generate an access key for each user sia spuntata prima di cliccare sul pulsante blu Create.

Nella schermata successiva visualizzerai le credenziali di accesso.

Wordpress Amazon S3 schermata 3

E’ importante prendere nota di queste credenziali poichè in futuro AWS non te li mostrerà più. In caso le perdessi dovrai creare un nuovo utente.

Configurare Amazon S3

Assicurati di installare e attivare i due plugin: Amazon Web Services e Amazon S3 e Cloudfront.
Una volta fatto vedrai una voce di menu sull’admin di WordPress. Selezionala e nel tab inserisci le tue credenziali di sicurezza.

Wordpress Amazon S3 schermata 4

Per testare rapidamente i plug-in, è necessario copiare l’ID dell’Access key ID e il Secret Access Key che abbiamo creato in precedenza.

Quindi è necessario spostare le key in wp-config.phpfile per sicurezza.
Lo vedremo in seguito, intanto è sufficiente segnare i valori nel file.

Seleziona S3 And CloudFront item nel menu AWS.
Potrai selezionare un bucket dal tuo account utilizzando il menu a discesa. Tutti i tuoi upload verranno inseriti in questo bucket. Consigliamo di spuntare la voce Set a far future HTTP expiration header for upload file.
Nella seconda parte del box spunta le voci: Copy to S3 as you upload e Point the URLs.

Wordpress Amazon S3 schermata 5

Per riassumere

Abbiamo creato un bucket su un server S3 per archiviare i tuoi file e ci siamo assicurati che anche le URL puntassero verso questo bucket.
Se provi ad effettuare un upload di un file, dovresti visualizzare l’URL che punta ad Amazon invece del tuo dominio.
Wordpress Amazon S3 schermata 6

Purtroppo, le immagini preesistenti non saranno automaticamente inviate ai server S3. Su questo tema gli sviluppatori di plugin stanno lavorando su una versione pro.

Servire le immagini con CloudFront

C’è un ulteriore step che può aiutarti a migliorare ulteriormente l’esperienza dei tuoi utenti assicurando loro un servizio più veloce.
Amazon CloudFront è un CDN (Content Delivery Network), che offre integrazione con altri prodotti AWS così da facilitare a sviluppatori e aziende la distribuzione di contenuti agli utenti con bassa latenza, consentendo un’alta velocità di trasferimento dati e nessun impegno minimo di utilizzo.
Il CDN è uno strumento utilissimo perché permette di servire immagini da una posizione geograficamente più vicina all’utente. Ad esempio se hai un server negli Stati Uniti, un lettore europeo avrà un tempo di loading più elevato rispetto ad uno statunitense. I CDN affrontano proprio questo problema riflettendo il contenuto su diverse location in modo da offrire file da una posizione più vicina all’utenza.

Configurare CloudFront è abbastanza semplice

Torna alla Management Console nel tuo account Amazon S3 clicca su CloudFront. Dopo aver attivato questo servizio ti apparirà la schermata seguente.

cloudfront schermata 7

Clicca il pulsante Create Distribution, quindi, scegli Get Started nella sezione Web.

Alla pagina troverai delle impostazioni, seleziona il bucket creato in Origin Domain Name.
Scorri verso il basso e clicca su Create Distribution. La distribuzione impiegherà 20-30 minuti per attivarsi. Attendi fino a quando lo stato sarà impostato su Enabled.
Torna in Amazon S3 con il plugin Cloudfront, e al setting, nelle impostazioni di CloudFront compila il campo del Domain name.

cloudfront schermata 8

Conclusioni

Amazon S3 è un’ottima soluzione per lo storage dei file media. E’ possibile migrare siti ogni volta si ha necessità di scalare le applicazioni semplicemente senza paura di subire danni. Inoltre, l’utilizzo di CloudFront riduce il tempo di download, tempo che potrebbe compromettere la partecipazione della propria utenza.

Comments are closed.

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi