# Uso dello Staging: Push in Produzione e Pull dalla Produzione

Source: https://support.kapsulehost.com/it-it/wordpress-staging-workflow

Staging è pensato per siti WordPress e WooCommerce. Una volta creata una copia di staging, due operazioni la mantengono utile: sincronizzare le modifiche testate verso il sito live e reimpostare staging riportandolo a una copia aggiornata della produzione. Questa guida illustra in dettaglio entrambe le direzioni, le conferme che proteggono il sito live e i casi in cui sincronizzare il database distruggerebbe dei dati.

Se non hai ancora creato un ambiente di staging, inizia da [Utilizzo degli ambienti di staging](https://support.kapsulehost.com/it-it/staging-environments). Questo articolo riprende dal punto in cui lo staging esiste già.

## Le Due Direzioni

| Operazione | Cosa sovrascrive | Quando usarla |
|---|---|---|
| **Sincronizza a Produzione** | Il tuo sito live | Le modifiche in staging sono testate e pronte per andare online |
| **Reimposta da Produzione** | Il tuo sito di staging | Vuoi una copia pulita dell'attuale sito live su cui lavorare |

Entrambe si trovano nella stessa schermata: **Siti web**, poi il tuo sito, poi **Environment**, poi **Staging**.

![La pagina Staging per un sito in KPanel, che mostra il dominio di staging, il suo stato e l'ultima sincronizzazione](https://support.kapsulehost.com/help/screenshots/wordpress-staging-workflow.8f62c65f.webp)

Il riquadro in alto in quella schermata mostra il dominio di staging, il suo stato, da quanto tempo è stato sincronizzato l'ultima volta dalla produzione e quando è stato eseguito l'ultimo push. **WP Admin** ti accede direttamente alla dashboard del sito di staging, mentre **Visita il sito** apre il front end di staging.

> **Tip:** Una copia di staging che non è stata sincronizzata da una settimana o più viene segnalata in ambra su quel riquadro. Uno staging vecchio è peggio di nessuno staging: finisci per testare su un sito che non assomiglia più a quello live. Reimposta prima di iniziare un nuovo lavoro, non dopo.

## Sincronizzare Staging a Produzione

Questa operazione sostituisce parte o tutto il tuo sito live con ciò che si trova in staging.

1. Apri **Environment**, poi **Staging**.
2. Scorri fino a **Sincronizza Staging a Produzione**.
3. Scegli cosa sincronizzare con le caselle di controllo: **File**, **Database**, oppure entrambi.
4. Se hai selezionato **Database**, lascia selezionato **Riscrivi URL**. Questa opzione esegue una ricerca e sostituzione su tutte le tabelle in modo che l'hostname di staging venga sostituito con quello di produzione come parte del push.
5. Seleziona **Comprendo che questo modifica il mio sito di produzione live.**
6. Digita il tuo dominio di produzione nella casella di conferma esattamente come mostrato.
7. Fai clic su **Sincronizza a Produzione**.

Il pulsante rimane disattivato finché non sono soddisfatte entrambe le condizioni, la casella selezionata e il dominio corrispondente, così un clic involontario non può avviare un push.

> **Warning:** Un push sovrascrive, non unisce. Qualsiasi cosa sia cambiata in produzione dall'ultimo reset viene sostituita da ciò che si trova in staging. Questo include nuovi articoli, nuovi account cliente, nuove voci di modulo e nuovi ordini.

Prima che venga scritto qualsiasi dato viene effettuato automaticamente un backup completo della produzione e, se il push fallisce a metà percorso, la produzione viene ripristinata a partire da quel backup. I siti piccoli di solito terminano in meno di un minuto; un database di grandi dimensioni o una libreria multimediale di diversi gigabyte richiede più tempo.

### Scegliere Tra File, Database, o Entrambi

Questa è la decisione più importante e la risposta di solito non è "entrambi".

**Solo file.** L'impostazione predefinita sicura per un sito che raccoglie qualsiasi cosa dai visitatori. Modifiche al tema, aggiornamenti dei plugin, modifiche ai template e codice personalizzato risiedono tutti nei file. Sincronizzare solo i file lascia intatti ogni articolo, commento, ordine e utente in produzione.

**Solo database.** Per modifiche a contenuti o impostazioni effettuate in staging, su un sito dove nessuno modifica direttamente la produzione. Raro nella pratica.

**Entrambi.** Corretto per un redesign o una ricostruzione in cui lo staging è il nuovo sito e la produzione viene sostituita completamente. Comunicalo, fallo fuori orario e verifica prima di avere un backup aggiornato.

> **Important:** Sincronizzare il database su un negozio live elimina gli ordini. WooCommerce conserva ordini, clienti, abbonamenti, coupon e livelli di stock nel database, quindi ogni ordine effettuato dall'ultimo reset dalla produzione scompare nel momento in cui il push viene completato. Non esiste un recupero parziale. Su un negozio, sincronizza solo i file ed effettua le modifiche a livello di database direttamente in produzione. Vedi [Configurazione di WooCommerce](https://support.kapsulehost.com/it-it/wordpress-woocommerce).

La stessa trappola si applica, in modo meno drammatico, a qualsiasi sito con commenti, invii di moduli, iscrizioni ad abbonamenti o una mailing list memorizzata in WordPress.

## Reimpostare Staging da Produzione

Questa è la direzione sicura: sovrascrive staging con l'attuale sito live e non tocca mai la produzione.

1. Apri **Environment**, poi **Staging**.
2. Trova **Reimposta da Produzione**.
3. Seleziona **File**, **Database**, oppure entrambi.
4. Fai clic su **Reimposta da Produzione**.

Fai questo ogni volta che:

- La produzione è andata avanti, con nuovi articoli, nuovi ordini o modifiche ai contenuti.
- Stai iniziando un nuovo lavoro e vuoi una base realistica.
- Lo staging si è discostato abbastanza da rendere inutile qualsiasi risultato di test lì ottenuto.

Qualsiasi cosa in staging che non sia stata sincronizzata viene persa. Se c'è del lavoro in staging che vuoi ancora conservare, sincronizzalo prima, oppure copia i file modificati tramite **Impostazioni**, poi **Gestore file** prima di effettuare il reset.

## Come Funziona la Riscrittura degli URL

WordPress memorizza il proprio indirizzo nel database, nelle righe `siteurl` e `home` della tabella delle opzioni, e gli URL assoluti finiscono anche nei contenuti degli articoli, nei valori dei meta, nelle impostazioni dei widget e nelle opzioni del tema.

Il tuo sito di staging viene eseguito su `staging.` seguito dal tuo dominio, quindi ognuno di quei valori punta all'hostname di staging mentre ci lavori. **Riscrivi URL** durante il push esegue una vera ricerca e sostituzione su tutte le tabelle, gestendo correttamente le impostazioni serializzate dei plugin, e sostituisce l'hostname di staging con quello di produzione.

Lascialo selezionato a meno che tu non abbia un motivo specifico per non farlo. Se sincronizzi solo i file, o se sopravvive un URL di staging isolato, correggilo con [Esecuzione di una Ricerca e Sostituzione](https://support.kapsulehost.com/it-it/wordpress-search-replace).

## Un Flusso di Lavoro Affidabile

1. **Reimposta da produzione** in modo che lo staging corrisponda al sito live.
2. **Esegui un backup della produzione** prima di iniziare, così da avere un punto di ripristino indipendente dal push: [Eseguire un Backup](https://support.kapsulehost.com/it-it/taking-a-backup).
3. **Esegui il lavoro in staging.** Aggiornamenti di plugin e temi, nuovo codice, modifiche al layout.
4. **Testa sul dominio di staging.** Carica le pagine che hai modificato e quelle che non hai modificato. Su un negozio, esegui un ordine di prova dall'inizio alla fine.
5. **Sincronizza solo i file** a meno che tu non abbia deliberatamente deciso che anche il database deve essere trasferito.
6. **Controlla subito la produzione.** Home page, una pagina interna, il checkout e la dashboard di amministrazione.
7. **Reimposta nuovamente lo staging dalla produzione** una volta soddisfatto, in modo che il turno successivo inizi pulito.

> **Note:** Lo staging è gestito interamente dal tuo sito di produzione. Non compare come voce separata nell'elenco **Siti web**, quindi ogni controllo relativo, inclusa l'eliminazione, si trova in questa unica scheda.

## Eliminare Staging

Il riquadro **Elimina Staging** in fondo alla stessa schermata rimuove la copia di staging. La produzione non viene interessata. Eliminalo quando un progetto è terminato: lo staging conta ai fini dello spazio di archiviazione del tuo piano, e una copia obsoleta è più un rischio che una risorsa.

## Risoluzione dei Problemi

**Il pulsante Sincronizza a Produzione non si attiva.** Devono essere soddisfatte entrambe le condizioni: la casella di conferma selezionata e il dominio di produzione digitato esattamente, senza `https://` e senza barra finale.

**Il push è terminato ma il sito mostra ancora contenuti vecchi.** Cache. Svuota da **WordPress**, poi **Azioni rapide**, poi **Svuota cache**, elimina la cache del CDN da **Prestazioni**, poi **Kapsule CDN**, e ricarica in una finestra privata.

**Gli URL di staging compaiono sul sito live dopo un push.** Il database è stato trasferito senza **Riscrivi URL** selezionato. Esegui una ricerca e sostituzione dall'hostname di staging al tuo dominio di produzione: [Esecuzione di una Ricerca e Sostituzione](https://support.kapsulehost.com/it-it/wordpress-search-replace).

**Ho sincronizzato il database e ho perso gli ordini.** Ripristina immediatamente il backup automatico pre-push, prima che arrivino altri ordini sul database sovrascritto: [Ripristino da un Backup](https://support.kapsulehost.com/it-it/restoring-from-backup).

**Staging mostra un errore dopo un reset.** La causa abituale è un plugin che codifica staticamente il dominio di produzione. Accedi con **WP Admin** sul riquadro di staging e disattiva i plugin lì finché l'errore non scompare, quindi correggi o sostituisci quello responsabile in produzione.
