WordPress

Utiliser la mise en scène : Pousser vers la production et tirer de la production

Once a staging copy exists, two operations keep it useful: pushing your tested changes up to the live site, and resetting staging back to a fresh copy of production. This guide covers both…

Une fois qu'une copie staging existe, deux opérations la maintiennent utile : pousser vos modifications testées vers le site en direct, et réinitialiser staging pour obtenir une copie actualisée de la production. Ce guide couvre les deux directions en détail, les confirmations qui protègent votre site en direct, et les cas où pousser une base de données détruirait des données.

Si vous n'avez pas encore créé d'environnement staging, commencez par Utiliser les environnements staging. Cet article reprend à partir du point où staging existe.

Les deux directions

OpérationCe qu'elle remplaceÀ utiliser quand
Pousser vers la productionVotre site en directLes modifications sur staging sont testées et prêtes à passer en direct
Réinitialiser à partir de la productionVotre site stagingVous voulez une copie récente du site en direct sur lequel travailler

Les deux se trouvent sur le même écran: Websites, puis votre site, puis Environments, puis Staging.

Onglet Staging sur un site dans KPanel

La carte en haut de cet écran affiche votre domaine staging, son statut, quand il a été synchronisé pour la dernière fois depuis la production, et quand il a été poussé pour la dernière fois. WP Admin vous connecte directement au tableau de bord du site staging, et Visit site ouvre le front end du site staging.

Une copie staging qui n'a pas été synchronisée depuis une semaine ou plus est signalée en orange sur cette carte. Un ancien staging est pire que pas de staging du tout : vous finissez par tester sur un site qui ne ressemble plus au site en direct. Réinitialisez avant de commencer un nouveau travail, pas après.

Pousser staging vers la production

Ceci remplace une partie ou la totalité de votre site en direct avec ce qui est sur staging.

  1. Ouvrez Environments, puis Staging.
  2. Faites défiler jusqu'à Push Staging to Production.
  3. Choisissez ce que vous voulez pousser avec les cases à cocher : Files, Database, ou les deux.
  4. Si vous avez coché Database, laissez Rewrite URLs coché. Il exécute une recherche et un remplacement sur chaque table pour que le nom d'hôte staging soit échangé avec celui de votre production dans le cadre de la poussée.
  5. Cochez I understand this modifies my live production site.
  6. Tapez votre domaine de production dans la boîte de confirmation exactement comme indiqué.
  7. Cliquez sur Push to Production.

Le bouton reste désactivé jusqu'à ce que la case à cocher soit cochée et que le domaine corresponde, donc un clic mal chronométré ne peut pas commencer une poussée.

Une poussée remplace, elle ne fusionne pas. Tout ce qui a changé sur la production depuis votre dernière réinitialisation est remplacé par ce qui est sur staging. Cela inclut les nouveaux articles, les nouveaux comptes clients, les nouvelles entrées de formulaire et les nouvelles commandes.

Une sauvegarde complète de la production est effectuée automatiquement avant que rien ne soit écrit, et si la poussée échoue en chemin, la production est restaurée à cette sauvegarde. Les petits sites terminent généralement en bien moins d'une minute ; une grande base de données ou une bibliothèque de médias de plusieurs gigaoctets prend plus de temps.

Choisir Files, Database, ou les deux

C'est la décision qui compte le plus, et la réponse n'est généralement pas "les deux".

Fichiers seulement. L'option par défaut sûre pour un site qui collecte quoi que ce soit des visiteurs. Les modifications de thème, les mises à jour de plugin, les modifications de modèle et le code personnalisé vivent tous dans les fichiers. Pousser les fichiers seuls laisse chaque article, commentaire, commande et utilisateur sur la production intouchés.

Base de données seulement. Pour les modifications de contenu ou de paramètres effectuées sur staging, sur un site où personne n'édite la production directement. Rare dans la pratique.

Les deux. Correct pour une refonte ou une reconstruction où staging est le nouveau site et la production est remplacée en gros. Annoncez-le, faites-le en dehors des heures, et confirmez que vous avez une sauvegarde actuelle d'abord.

Pousser la base de données vers un magasin en direct supprime les commandes. WooCommerce garde les commandes, les clients, les abonnements, les bons de réduction et les niveaux de stock dans la base de données, donc chaque commande passée depuis votre dernière réinitialisation à partir de la production disparaît au moment où la poussée se termine. Il n'y a pas de récupération partielle. Sur un magasin, poussez les fichiers seulement, et effectuez les modifications au niveau de la base de données directement sur la production. Voir Setting Up WooCommerce.

Le même piège s'applique, moins dramatiquement, à tout site avec des commentaires, des soumissions de formulaire, des inscriptions à un membership ou une liste de diffusion stockée dans WordPress.

Réinitialiser staging à partir de la production

C'est la direction sûre : elle remplace staging avec le site en direct actuel et ne touche jamais la production.

  1. Ouvrez Environments, puis Staging.
  2. Trouvez Reset from Production.
  3. Cochez Files, Database, ou les deux.
  4. Cliquez sur Reset from Production.

Faites ceci chaque fois que :

  • La production a avancé, avec de nouveaux articles, de nouvelles commandes ou des modifications de contenu.
  • Vous commencez un nouveau travail et voulez une base réaliste.
  • Staging a dérivé assez loin qu'un résultat de test là signifie rien.

Tout ce qui est sur staging qui n'a pas été poussé est perdu. S'il y a du travail sur staging que vous voulez toujours, poussez-le d'abord, ou copiez les fichiers modifiés par Files, puis File Manager avant de réinitialiser.

Comment fonctionne la réécriture d'URL

WordPress stocke sa propre adresse dans la base de données, dans les lignes siteurl et home de la table options, et les URL absolues finissent également dans le contenu des articles, les valeurs de métadonnées, les paramètres de widget et les options de thème.

Votre site staging fonctionne sur staging. suivi de votre domaine, donc chacune de ces valeurs pointe vers le nom d'hôte staging pendant que vous y travaillez. Rewrite URLs sur la poussée exécute une véritable recherche et remplacement dans toutes les tables, en gérant correctement les paramètres de plugin sérialisés, et échange le nom d'hôte staging pour celui de votre production.

Laissez-le coché à moins que vous ayez une raison spécifique de ne pas le faire. Si vous poussez les fichiers seulement, ou qu'une URL staging égarée survit, corrigez-la avec Running a Search and Replace.

Un workflow qui tient debout

  1. Réinitialisez à partir de la production pour que staging corresponde au site en direct.
  2. Faites une sauvegarde de la production avant de commencer, pour avoir un point de restauration indépendant de la poussée: Taking a Backup.
  3. Faites le travail sur staging. Mises à jour de plugin et de thème, nouveau code, modifications de mise en page.
  4. Testez sur le domaine staging. Chargez les pages que vous avez modifiées, et les pages que vous n'avez pas modifiées. Sur un magasin, exécutez une commande de test de bout en bout.
  5. Poussez les fichiers seulement sauf si vous avez délibérément décidé que la base de données doit aussi y aller.
  6. Vérifiez la production immédiatement. Page d'accueil, une page profonde, le paiement, et le tableau de bord admin.
  7. Réinitialisez staging à partir de la production à nouveau une fois que vous êtes satisfait, pour que le prochain cycle commence propre.

Staging est géré entièrement à partir de votre site de production. Il n'apparaît pas comme une entrée distincte dans la liste Websites, donc chaque contrôle pour lui, y compris le supprimer, vit sur cet onglet unique.

Supprimer staging

La carte Delete Staging en bas du même écran supprime la copie staging. La production n'est pas affectée. Supprimez-la quand un projet est terminé : staging compte dans le stockage de votre plan, et une copie obsolète est une responsabilité plutôt qu'un atout.

Dépannage

Le bouton Push to Production ne s'activera pas. Les deux conditions doivent être remplies : la case à cocher de confirmation cochée, et le domaine de production tapé exactement, sans https:// et sans barre oblique finale.

La poussée a terminé mais le site affiche toujours l'ancien contenu. Mise en cache. Purgez depuis WordPress, puis Quick Actions, puis Flush Cache, purgez le CDN depuis Performance, puis Kapsule CDN, et rechargez dans une fenêtre privée.

Les URL staging s'affichent sur le site en direct après une poussée. La base de données s'est transmise sans Rewrite URLs coché. Exécutez une recherche et un remplacement du nom d'hôte staging à votre domaine de production: Running a Search and Replace.

J'ai poussé la base de données et j'ai perdu des commandes. Restaurez immédiatement la sauvegarde automatique avant la poussée, avant que d'autres commandes arrivent sur la base de données remplacée: Restoring From a Backup.

Staging affiche une erreur après une réinitialisation. Un plugin qui code en dur le domaine de production est la cause habituelle. Connectez-vous avec WP Admin sur la carte staging et désactivez les plugins là jusqu'à ce que l'erreur disparaisse, puis corrigez ou remplacez celui qui pose problème sur la production.

Vous avez besoin d'aide?

Envoyez-nous un email à support@kapsulehost.com ou ouvrez un chat dans KPanel.

Ouvrir KPanel
Push Staging to Production | Kapsule Help