Vorresti testare un nuovo plugin ma non puoi farlo direttamente sul tuo blog? Ti piacerebbe cambiare aspetto al tuo sito con un nuovo template e testarne le caratteristiche? Vorresti fare degli sviluppi e vedere come reagisce il tuo website?
Se ti stai ponendo queste domande allora hai bisogno di una copia di staging del tuo blog wordpress che ti consenta di fare test, verifiche e personalizzazioni prima di portare le modifiche sul tuo blog live.
In questo articolo ti spiego cos'è un ambiente di staging, perché è importante avere un ambiente di staging per un blog wordpress e soprattutto come crearlo passo passo usando varie tecniche (manuale, con cPanel e tramite plugin)
I contenuti dell'articolo
Cos'è un ambiente di staging
Un ambiente di staging o anche detto ambiente di pre-produzione è appunto una copia speculare del tuo blog (website) live, che puoi utilizzare per fare test, verifiche funzionali, installazioni di patch e nuovi template.
Io ad esempio lo utilizzo molto per fare test sulla componente grafica, basti pensare a quando è uscito gutenberg o alle molte migrazioni di aspetto grafico che ho affatto al mio blog nel tempo.
Senza un ambiente di staging sarebbe stato impossibile testare le nuove funzionalità dei vari temi, dei nuovi plugin e delle modifiche all'editor di testo.
Vieni a vedere come creare un ambiente di staging.
Come creare un ambiente di Staging
Come detto un ambiente di staging è una copia speculare del tuo blog wordpress, quindi per creare un ambiente di staging dovrai creare una replica del tuo blog.
I sistemi più complessi, soprattutto se si parla di sistemi enterprise, hanno degli automatismi che ti permettono di tenere “sincronizzati” gli ambienti di produzione e test.
Noi ci accontenteremo di un ambiente speculare, da usare per fare test, verifiche ed installazioni senza creare questo sincronismo automatico che, a mio avviso, per un blog non ha molto senso.
Come prima cosa dovrai predisporre il “contenitore” dell'ambiente di test, che sarà un dominio di terzo livello (es staging.tuosito.it), configurarlo installando patch e protocollo sicuro e poi “copiare” il tuo blog nel nuovo contenitore, trasferendovi file e data base.
Per finire dovrai oscurare ai motori di ricerca il nuovo ambiente e soprattutto renderlo inaccessibile a chiunque non sia in possesso di una utenza abilitata attivando la modalità “coming soon“, in questo modo solo le persone in possesso di una utenza e di una password potranno lavorare sul blog.
Creare un dominio di terzo livello
La prima cosa da fare quando si vuol creare un ambiente di test è creare un dominio di terzo livello che funga da “contenitore” ovvero un website accessibile da una url simile alla seguente:
staging.tuowebsite.it
Come prima cosa accedi in ftp alla wwwroot del tuo website ovvero alla posizione di default del tuo webserver (Apache, nginx, lighttpd… ) e crea la cartella “staging“. Questa operazione puoi farla utilizzando un FTPClient come FileZilla oppure puoi farlo via web utilizzando gli strumenti messi a disposizione dal tuo hosting provider.
Io ad esempio utilizzo Netsons come hosting provider per i miei website
se anche tu utilizzi Netsons puoi utilizzare l'interfaccia di controllo file messa a disposizione dall'hosting stesso attraverso il tool CPanel.
Creare una cartella è davvero semplice ed intuitivo
Appena creata la cartella “staging” sei pronto per creare io dominio di terzo livello, per cui, sempre utilizzando l'interfaccia CPanel, accedi alla voce “Sottodomini”
Nella sezione crea un nuovo sottodominio inserendo il valore “staging” alla voce Sottodominio, lascia il tuo Dominio alla seconda voce ed alla Radice documento fatti aiutare dall'autocomplete della casella per trovare la cartella /public_html/staging appena creata.
Clicca su crea ed il gioco è fatto.
Installare https su dominio di terzo livello
Ora che hai creato il sottodominio puoi procedere con l'installazione del protocollo https Let's Encrypt, se non sai cosa sia il protocollo sicuro e come installarlo sul blog principale ti consiglio di leggere questo mio articolo
Per installarlo accedi alla sezione Let's Encrypt (Sicurezza)
Seleziona il nuovo dominio di terzo livello e poi clicca sulla voce “issue“. Aspetta qualche secondo ed il gioco è fatto, l'https è installato sul tuo dominio di terzo livello.
Creare copia di staging con CPanel
Ora che hai predisposto il dominio di terzo livello e installato il protocollo https puoi iniziare a creare la copia di staging del tuo blog. Se utilizzi il provider Netsons il mio consiglio è quello di utilizzare CPanel e le funzionalità integrate per la creazione di una copia di staging.
Accedi alla sezione “Software” e poi “il tuo sito con 1 click!”
Trova il tuo blog live
E poi clicca sull'icona “clona”
In fase di setup devi selezionare il dominio di terzo livello appena creato ed alla voce percorso scrivi il nome della cartella scelto per il domini di terzo livello (Es. staging)
Lascia poi le opzioni di default per la creazione del db
infine clicca su “Clona” ed attendi il completamento dell'operazione, al termine potrai accedere alla tua nuova sezione di staging usando il nome dominio scelto e vedrai la nuova sezione creata nel pannello di amministrazione siti
Crea copia di staging manualmente
La creazione manuale di una copia di staging è una operazione decisamente più complessa, dovrai fare manualmente le seguenti operazioni:
- copiare i file wordpress del tuo blog nella cartella “staging”
- creare un backup del tuo database live
- creare un nuovo database mysql vuoto
- effettuare un restore del database live nel nuovo data base
- modificare i settaggi di wordpress per far si che tutti i puntamenti siano corretto
Questa è una operazione decisamente più complessa che richiede delle competenze più avanzate, il mio consiglio è quello di seguire la procedura CPanel. Se proprio vuoi procedere manualmente allora seguimi
ti spiegherò alcuni trucchi per procedere alla copia del tuo blog.
copiare i file wordpress del tuo blog nella cartella “staging”
Questo step è molto semplice, dovrai identificare tutti i file contenuti nella wwwroot del tuo website e copiarli nella nuova cartella “staging“. Se utilizzi un plugin di caching il mio consiglio è di svuotare la cache e disattivarlo prima di procedere alla copia.
creare un backup del tuo database live
Il backup puoi crearlo utilizzando phpMyAdmin, accedi alla sezione “Esporta” e clicca su esegui
Se invece hai accesso in ssh al tuo spazio web puoi effettuare un backup con il comando:
mysqldump -u root -p [tuodatabase] > [tuodatabase]-20200210.sql
Al termine il backup sarà nel file [tuodatabase]-20200210.sql
creare un nuovo database mysql vuoto
Puoi creare un nuovo database utilizzando il tool CPanel “Database MySQL”
Dopo aver creato il database, crea un nuovo utente mysql con password complessa ed assegna le grant complete all'utente per il database appena creato.
Se invece hai accesso in ssh allora puoi creare un nuovo database con il seguente comando
CREATE DATABASE [nuovodatabase];
Sostituisci ai valori tra parentesi quadra quelli che vuoi creare per la tua nuova copia di staging.
effettuare il restore del database live nel nuovo data base di staging
Utilizzando phpMyAdmin puoi effettuare il restore dalla sezione “Importa“, comprimi e seleziona il tuo file e poi clicca su “Esegui“, attendi il completamento dell'operazione.
Se invece hai accesso in ssh allora puoi effettuare il restore del database con i seguenti comandi
mysql --database=[nuovodatabase] -u root -p < [tuodatabase]-20200210.sql CREATE USER '[nuovoutente]'@'localhost' IDENTIFIED BY '[nuovapassword]'; GRANT ALL PRIVILEGES ON `[nuovodatabase]`.* TO `[nuovoutente]`@`localhost`; FLUSH PRIVILEGES;
Sostituisci ai valori tra parentesi quadra quelli che vuoi creare per la tua nuova copia di staging.
modificare i settaggi di wordpress per avere i puntamenti corretti
Ora che hai effettuato il restore del database dovrai modificare i settaggi del blog per far si che i puntamenti siano corretti.
Come prima cosa apri il file wp-config.php che si trova nella cartella “staging” ed imposta i corretti valori del database
/** The name of the database for WordPress */ define( 'DB_NAME', '[nuovodatabase]' ); /** MySQL database username */ define( 'DB_USER', '[nuovoutente]' ); /** MySQL database password */ define( 'DB_PASSWORD', '[nuovapassword]' );
Poi dovrai fare le seguenti update nel database
update wp_options set option_value = 'https://staging.tuosito.it' where option_name = 'siteurl'; update wp_options set option_value = 'https://staging.tuosito.it' where option_name = 'home';
Per farlo puoi utilizzare phpMyAdmin oppure, se hai accesso in ssh alla shell linux, dovrai prima eseguire i seguenti comandi:
mysql -u root -p use [nuovodatabase]
e poi lanciare le due update.
Come vedi questa seconda strada è molto più lunga e complessa della prima per cui se non sei sicuro di quello che stai facendo utilizza CPanel e la clonazione per stare più tranquillo.
Non sei sicuro di quello che stai facendo? Vuoi la consulenza di un professionista serio ed affidabile?
Nascondere copia di staging ai motori di ricerca
Ora che il tuo blog di staging è live dovrai nasconderlo ai motori di ricerca e soprattutto inibirne l'accesso a tutti gli utenti che non ne abbiano il permesso.
Per nasconderlo ai motori di ricerca puoi accedere alla seguente sezione amministrativa del neonato blog: “Impostazioni” – “Lettura” e cliccare sul check “Scoraggia i motori di ricerca”
Per inibire l'accesso agli utenti puoi utilizzare un plugin oppure le funzionalità “coming soon” integrate del tuo template (se lo consente).
Il mio consiglio è quello di utilizzare il plugin “Coming Soon Page & Maintenance Mode by SeedProd“, un buon plugin gratuito che ti permette di configurare la pagina “coming soon” ed abilitate quindi il completo accesso solo per gli utenti registrati in possesso di utenza e password.
Conclusioni
Ora che hai creato la tua copia di staging, inibito l'accesso agli utenti e scoraggiato i motori di ricerca sei pronto per fare i test di configurazione, provare nuovi plugin, nuovi template e nuove impostazioni senza l'ansia di farlo sul tuo blog live.
In questo articolo ti ho spiegato come creare la tua copia di staging. Che te ne pare della mia guida? L'hai trovata chiara? Che ne dici di parlarne nei commenti?
2 commenti
Sto provando a costruire un sito con wordpress, per ora mi sembra “gaelico” forse in futuro mi verrà utile,
Many thanks
Elia
Ciao Elia,
grazie per il contatto.
Esiste una sezione dedicata a wordpress sul blog => https://www.pensando.it/wp/wordpress
A presto
Alessandro