WooCommerce: 11 consigli su prestazioni, sicurezza e scalabilità
Pubblicato: 2023-06-01I siti Web WooCommerce devono essere sempre operativi: devono caricarsi rapidamente, essere sicuri e gestire grandi picchi di traffico.
Raggiungere questo obiettivo può essere un compito arduo senza la giusta strategia e competenza, in particolare quando si ha a che fare con un numero elevato di visitatori, poiché un singolo problema può comportare ore di inattività e mancate vendite.
In questo articolo, il nostro ospite speciale Martin Ronfort, fondatore di Dr Tech , condividerà una panoramica delle strategie e dei processi che puoi applicare al tuo negozio WooCommerce e crescere con facilità
In Dr Tech, infatti, gestiscono migliaia di negozi WooCommerce – che vanno dalle piccole imprese appena agli inizi ai negozi con milioni di richieste e importanti campagne di marketing – e si occupano di tutti gli aspetti tecnici come hosting, velocità di caricamento, sicurezza, aggiornamenti, backup, uptime e scalabilità.
Andiamo, Martino!
- Ottimizzazione delle prestazioni
- Ottimizzazione dei dati
- Sicurezza
- Scalabilità
- Conclusione
Ottimizzazione delle prestazioni
1. CDN
Cominciamo direttamente con la più grande ottimizzazione che puoi fare. Se non utilizzi ancora un CDN, questo è ciò che ti porterà i maggiori vantaggi in termini di velocità di caricamento.
Se non sai cos'è un CDN, un Content Delivery Network è una rete di server situati in diverse parti del mondo che lavorano insieme per fornire contenuti di siti Web agli utenti in modo più rapido ed efficiente. Quando un utente richiede una pagina Web o un file da un sito Web, il CDN reindirizza automaticamente la richiesta al server più vicino nella rete in grado di fornire il contenuto. Ciò non solo riduce il carico sul server del sito Web, ma diminuisce anche la quantità di tempo necessaria affinché il contenuto raggiunga l'utente, con tempi di caricamento della pagina più rapidi e una migliore esperienza utente.
Dr Tech utilizza Cloudflare per quattro attività essenziali: scaricamento dei contenuti, ottimizzazione delle immagini, minimizzazione e consegna a pagina intera.
Scaricamento dei contenuti
Scaricando JS, CSS e immagini sul CDN e memorizzandoli nella cache, tutti questi file verranno serviti dai server del CDN e non dal tuo server. In questo modo, aumenterai in modo significativo la velocità di caricamento poiché Cloudflare ha datacenter in tutto il mondo e utilizzerà quello più vicino ai tuoi visitatori per servire il contenuto. Inoltre, ridurrà drasticamente il carico sul tuo server, con conseguente risparmio sui costi (abbiamo visto negozi memorizzare nella cache oltre l'80% delle loro richieste sul CDN!).
Ottimizzazione dell'immagine
Lo strumento di ottimizzazione delle immagini integrato di Cloudflare converte automaticamente le tue immagini in WebP, riducendone allo stesso tempo le dimensioni.
Minificazione
Ti consigliamo di utilizzare Cloudflare per la minificazione anziché il plug-in di memorizzazione nella cache poiché è più efficace. Tuttavia, sii cauto con la minimizzazione in quanto può potenzialmente danneggiare il tuo sito Web (dipende dal tema e dal plug-in che utilizzi). Quindi assicurati di testare il tuo negozio online per alcuni giorni dopo averlo implementato per assicurarti che funzioni correttamente per te. Se non funziona correttamente, basta disattivarlo.
Consegna a pagina intera
In questo modo puoi ottenere un tempo di caricamento inferiore a 1 secondo e un TTFB inferiore a 100 ms. L'idea è di memorizzare nella cache l'intera pagina sul CDN. Quando un visitatore visita il tuo negozio, la pagina intera viene caricata direttamente dai server del CDN e 0 richieste vanno al tuo server. Cloudflare ha server in tutto il mondo, il che significa che i tuoi contenuti saranno serviti ai tuoi visitatori da un server vicino a loro! E poiché si tratta di contenuto statico, il tuo sito web si caricherà molto velocemente
2. Ospitare
Per gestire un negozio WooCommerce in modo efficiente, evita i servizi di hosting condiviso economici che costano solo pochi dollari al mese. Anche con i tuoi migliori sforzi, non avrai risorse sufficienti per garantire velocità di caricamento e affidabilità elevate. Sebbene possano essere sufficienti per piccoli siti Web o blog, non sono adatti per l'e-commerce: semplicemente mancano della potenza richiesta per l'e-commerce.
Un altro problema da considerare è la complessità della migrazione, specialmente nell'e-commerce dove i clienti visitano il tuo sito e potenzialmente acquistano il tuo prodotto in ogni momento. La migrazione richiede tempi di inattività, il che significa che una volta superati questi piccoli server, sarà necessario migrare a un server più grande. In questo modo sarà necessario mettere offline il tuo sito web, il che potrebbe comportare una perdita di vendite e un impatto negativo sulla tua attività.
Si consiglia invece di utilizzare un server che sia:
- Ottimizzato per WooCommerce
- Flessibile per consentirti di aumentare le risorse (CPU, RAM e storage) man mano che cresci, evitando così la necessità di migrazione. Questo si chiama ridimensionamento verticale e ne parleremo di più nella parte sulla scalabilità.
3. Cache
In Dr Tech, utilizziamo il plug-in W3TC per la memorizzazione nella cache (la versione gratuita è sufficiente), ma potresti utilizzare un altro plug-in di memorizzazione nella cache: infatti, poiché la maggior parte dell'ottimizzazione delle prestazioni viene eseguita dal CDN, non importa quale plug-in utilizzi utilizzo. W3TC e gli altri plug-in di memorizzazione nella cache sono molto complessi. Tuttavia, utilizziamo solo due funzionalità: Page Caching e CDN.
Cache della pagina
Quando implementi la memorizzazione nella cache delle pagine, assicurati di escludere tutte le pagine che non devono essere memorizzate nella cache. Ad esempio, i plug-in SEO come Yoast possono causare problemi se la mappa del sito è memorizzata nella cache (abbiamo riscontrato questo problema su Dr Tech). Tutte le pagine WooCommerce dovrebbero già essere escluse per impostazione predefinita, inclusi carrello, checkout e il mio account. Per assicurarti che tutto funzioni correttamente, abilita la memorizzazione nella cache delle pagine e testa il tuo sito. In caso di problemi, escludi la pagina problematica dalla memorizzazione nella cache.
CDN
È la funzione CDN del tuo plug-in di memorizzazione nella cache che metterà tutti i tuoi file statici (JS, CSS e immagini) sul CDN. Dovrai eseguire la configurazione anche sul tuo CDN per abilitare la memorizzazione nella cache di quei file.
4. Gestire il tuo codice
Per ottenere prestazioni ottimali, è essenziale assicurarsi che i temi e i plug-in utilizzati siano ben codificati e seguano le migliori pratiche di WordPress. Se non lo fanno, è meglio non usarli affatto.
Inoltre, se il plug-in o il tema che desideri utilizzare non segue le migliori pratiche di WordPress, avrai problemi con gli aggiornamenti e la sicurezza più avanti nel tuo percorso di e-commerce.
Per fare ciò, puoi assumere uno sviluppatore esperto che ne sia a conoscenza o ottenere maggiori informazioni sull'argomento attraverso la documentazione di WordPress e WooCommerce. Tutto è ben descritto.
In Dr Tech, per garantire che tutto funzioni, verifichiamo il codice di tutti i plugin e temi prima di renderli disponibili agli utenti Dr Tech. Se non seguono le migliori pratiche di WordPress, semplicemente non li includiamo. Quando possibile, offriamo suggerimenti agli sviluppatori su come possono migliorare il loro codice, attendere che lo correggano e quindi aggiungerlo
Ottimizzazione dei dati
L'idea qui è semplice: le cose che non ti servono sul tuo sito web non dovrebbero essere sul tuo sito web. O dovresti eliminarlo, o forse non avrebbe mai dovuto essere aggiunto in primo luogo. Qualsiasi dato non necessario aumenta l'utilizzo dello spazio di archiviazione (lo paghi), l'utilizzo della CPU e della RAM (lo paghi anche tu) e rallenta il tuo database. Quindi vuoi sempre che il tuo negozio online sia il più piccolo possibile.
5. Utilizzare un sito di staging
Innanzitutto, dovresti utilizzare un sito di staging. Lì puoi testare nuovi temi, plugin, codice personalizzato o qualsiasi cosa tu voglia. E solo una volta che sei sicuro di usarli, aggiungili al tuo sito principale. Non testare mai le cose sul tuo sito principale.
Questo perché plug-in e temi aggiungono molti dati al tuo sito Web e quasi nessuno pulisce i propri dati quando li elimini. WordPress non ha funzionalità di pulizia per rimuovere i dati di un plug-in che hai appena installato per 2 minuti ed eliminarli all'istante. I suoi dati rimarranno per sempre nel tuo negozio online.
6. Rimozione di dati vecchi e inutilizzati
Anche se cerchi di stare attento a non aggiungere dati inutili al tuo negozio, ne avrai comunque alcuni. Ad esempio, post revisioni. Sono vecchie versioni delle tue pagine, articoli del blog, prodotti e altri tipi di contenuti sul tuo negozio online che vengono conservati automaticamente come backup. Questo può essere utile a volte, ma una volta che i tuoi contenuti sono stati pubblicati per alcune settimane, è probabile che tu non abbia più bisogno di questi backup. Inoltre, per impostazione predefinita, WordPress manterrà un numero illimitato di revisioni per tutti i tuoi post e probabilmente non ti servirà così tanto. Per fortuna, puoi semplicemente aggiungere una riga di codice nel tuo file wp-config per limitare il numero di revisioni che WordPress manterrà (puoi tenerne 5, per esempio):
define( 'WP_POST_REVISIONS', 5 );
Le revisioni sono un tipo di dati che desideri rimuovere; tutto ciò che non usi dovrebbe essere eliminato per garantire le massime prestazioni. E soprattutto se è nel tuo database!
Sicurezza
Per i nostri scopi di sicurezza Dr Tech, non posso dirti tutto quello che facciamo per proteggere la nostra infrastruttura. Ma di seguito sono riportate alcune best practice che possiamo condividere con te.
Per cominciare, possiamo dire che è molto più facile costruire buone pratiche, buoni processi e buone abitudini quando si è piccoli e non ci sono pressioni. Se hai un problema di sicurezza, sarà un momento di grande pressione e sistemare le cose è molto più difficile della prevenzione!
7. Non dare alle persone l'accesso al tuo sito
È una pratica comune nella comunità di WordPress per gli sviluppatori richiedere il proprio amministratore WP o le credenziali FTP. Anche se riconosco che può essere una soluzione rapida per aiutarti, la concessione di questo accesso dà loro pieno potere sul tuo negozio: possono accedere ai tuoi file, dati ... tutto. Sebbene la maggior parte delle persone abbia buone intenzioni, la sicurezza inizia con l'istituzione di pratiche sane. Pertanto, è fondamentale non rivelare mai la tua password di amministratore e astenersi dal consentire a chiunque esterno al tuo team di modificare qualsiasi codice che non capisci o che non hai ispezionato.
Invece, è meglio chiedere una guida ed eseguire il compito da soli.
Puoi anche utilizzare il tuo sito di staging e far lavorare gli sviluppatori lì. Quindi, puoi esaminare le modifiche e applicarle autonomamente al tuo sito principale.
8. Rivedi il tuo codice
Il motivo per cui non vuoi che le persone accedano al tuo codice è che ci sono molte potenziali vulnerabilità. Ad esempio, le backdoor sono una delle vulnerabilità più comuni. Queste backdoor forniscono agli estranei l'accesso non autorizzato al tuo sito, consentendo loro di fare qualsiasi cosa, dal furto di dati al controllo dell'intero sito. È fondamentale garantire che il codice sia privo di backdoor e altre vulnerabilità.
Quindi, se hai bisogno di assumere sviluppatori esterni, ed è lo stesso se installi un nuovo tema o un nuovo plugin, devi prendere qualche precauzione. Anche se non hanno cattive intenzioni, potrebbero non avere l'esperienza, la conoscenza o l'attenzione ai dettagli necessarie per evitare di creare seri problemi di vulnerabilità. È sempre meglio avere un professionista esperto nel tuo team per rivedere e verificare tutto.
Inoltre, anche se il tuo negozio è attualmente piccolo e poco attraente per gli aggressori, è essenziale rimanere vigili e garantire che il tuo sito rimanga sicuro man mano che cresce. Costruire buone abitudini di sicurezza fin dall'inizio è molto più facile che cercare di sistemare le cose quando gli aggressori hanno già trovato vulnerabilità.
9. Aggiungi strumenti: WAF, DDOS e protezione dalla forza bruta
WAF
Un WAF (Web Application Firewall) è uno strumento di sicurezza che aiuta a proteggere i siti Web da attacchi dannosi, come SQL injection e cross-site scripting. Funge da filtro tra il sito Web e Internet, ispezionando il traffico in entrata e bloccando eventuali richieste dannose.
Per il tuo negozio di e-commerce, un WAF è particolarmente importante perché aiuta a prevenire gli attacchi che potrebbero compromettere i dati sensibili dei clienti, come i dati della carta di credito.
Protezione DDOS
Un DDOS o Distributed Denial of Service è un tipo di attacco informatico in cui più sistemi inondano il tuo sito Web di traffico, sovraccaricando il tuo server e rendendolo non disponibile per gli utenti legittimi. Questo tipo di attacco viene spesso eseguito da hacker o altri malintenzionati per interrompere o chiudere un sito Web o un servizio online.
Senza la protezione DDOS, un attacco riuscito potrebbe comportare tempi di inattività significativi, vendite perse e danni alla reputazione dell'azienda. La protezione DDOS può aiutare a mitigare l'impatto di questi attacchi rilevando e bloccando il traffico dannoso prima che possa sopraffare il tuo negozio online.
Protezione dalla forza bruta
Un attacco di forza bruta è un tipo di attacco informatico in cui un utente malintenzionato tenta di indovinare la password di un utente provando ripetutamente diverse combinazioni di caratteri fino a trovare quella corretta. Questo tipo di attacco può essere molto efficace se non c'è nulla che li blocchi nel tuo negozio online. Dovresti anche utilizzare password complesse e utilizzare misure di sicurezza come l'autenticazione a due fattori e la limitazione della velocità per limitare il numero di tentativi di accesso. Inoltre, non dovresti usare uno pseudonimo molto semplice come accesso amministratore, non usare "admin"
Scalabilità
Congratulazioni per il lancio del tuo negozio e per l'aumento delle vendite e del traffico! Ora che il tuo negozio cresce, deve crescere anche la tua infrastruttura server. Esistono due modi per ridimensionare l'infrastruttura: ridimensionamento verticale e ridimensionamento orizzontale (noto anche come infrastruttura multi-server).
10. Ridimensionamento verticale
Il ridimensionamento verticale è semplice. Quando hai bisogno di più risorse, aumenti le specifiche del tuo server aggiungendo più RAM, CPU e spazio di archiviazione. Quindi, sei a posto fino a quando non avrai bisogno di farlo di nuovo.
Questa soluzione funziona finché non raggiungi la capacità massima del tuo server. Sfortunatamente, il ridimensionamento verticale non è infinito, le macchine fisiche che ospitano il tuo negozio hanno dei limiti. Questo è il momento in cui il ridimensionamento diventa complicato e devi migrare a un'infrastruttura multi-server.
Inoltre, un motivo in più per non utilizzare un server economico: porterà solo a raggiungere la sua capacità massima più velocemente e richiederà la migrazione a un server più grande. Questa migrazione causerà tempi di inattività, che si desidera evitare. Iniziare con un buon server che ha il potenziale per scalare il più grande possibile ti farà risparmiare tempo e fatica.
11. Ridimensionamento orizzontale: infrastruttura multi-server
Con un'infrastruttura multi-server, puoi espandere la tua attività senza preoccuparti dei limiti delle risorse e puoi gestire facilmente picchi elevati nel traffico del sito web. Man mano che le tue esigenze crescono, puoi semplicemente aggiungere più server o rimuoverli quando non sono più necessari.
Idealmente, dovresti iniziare dall'inizio su un'infrastruttura multi-server. Ma poiché è più complesso e più costoso, la maggior parte delle aziende inizia scalando verticalmente. Tuttavia, arriverà un punto in cui un singolo server non sarà in grado di gestire il traffico e sarà necessario un team con competenze specializzate per creare e mantenere una configurazione multi-server per una crescita continua.
Consiglierei di prendere in considerazione questa opzione all'inizio, ben prima di raggiungere il massimo potenziale del server se si esegue il ridimensionamento verticale. Ciò contribuirà a evitare qualsiasi limitazione e consentirà un processo di pianificazione regolare e senza stress per la nuova configurazione!
Bonus
Un'infrastruttura multi-server migliorerà notevolmente i tempi di attività. Con la possibilità di avere più server, puoi avere server in standby pronti a subentrare in caso di guasto. Utilizzando un sistema di bilanciamento del carico, puoi distribuire il traffico tra i server e interrompere automaticamente l'invio del traffico a un server che non funziona correttamente. Questo crea un'infrastruttura molto più stabile per la tua azienda.
Al Dr Tech, questo è ciò che facciamo. Mettiamo il tuo negozio su un'infrastruttura multi-server fin dall'inizio e utilizziamo sistemi di bilanciamento del carico per garantire che il tuo negozio possa crescere e gestire grandi quantità di traffico senza problemi di risorse.
Conclusione
Prestazioni, sicurezza e scalabilità sono importanti quanto la qualità dei prodotti che vendi sul tuo sito web WooCommerce.
Puoi avere il miglior prodotto sul mercato, ma se deludi i tuoi clienti perché il tuo sito web WooCommerce non è ottimizzato, puoi perdere molte entrate potenziali (lo stesso vale per il contrario! Se hai il migliore e il più sito Web WooCommerce ottimizzato sul pianeta ma vendi un prodotto che nessuno vuole o piace, hai sprecato il tuo tempo e il tuo investimento di denaro).
Ora tocca a te agire sul tuo sito Web WooCommerce e renderlo più veloce, più sicuro e in grado di funzionare bene con i picchi di traffico.
Se non vuoi implementare queste strategie da solo, puoi sempre migrare il tuo sito Web a Dr Tech, in modo che tu possa concentrarti sulla crescita della tua attività, mentre loro si occupano di tutto il resto. Attualmente offrono una prova gratuita di 7 giorni e poi solo $ 1 al mese per i prossimi 3 mesi. Scopri di più sul sito web di Dr Tech.