2010-05-29 9 views
2

Sur la diapositive 15, il est question de "verrouiller le site en cours" lors du déploiement.Comment "verrouiller" un site en ligne lors du déploiement (phing)

Nous courons dans plusieurs boutiques en ligne une application SAAS où il est possible que les utilisateurs ajoutent des produits, l'achat de produits et de payer pour les produits en ligne, et ainsi de suite ...

Lors du déploiement, nous voulons faire aussi propre que possible, de sorte que pas les paiements ou les commandes ou d'autres données critiques seront perdues.

Nous avons un scénario de déploiement mis en place en utilisant phing (outil incroyable!) Mais il nous manque une étape cruciale étant le "verrouillage du site en cours" lors du déploiement.

Quelle est la meilleure façon de verrouiller un site en ligne et de le remettre en ligne après son déploiement?

Répondre

3

Vous pouvez créer une tâche qui crée (ou déploie) une page de maintenance (HTML) et le fichier .htaccess associé pour y rediriger toutes les demandes. Ensuite, faites le reste de votre déploiement. Enfin, remplacez le fichier .htaccess par la version normale et vous avez terminé.

This is a nice example dans le livre Expert PHP 5 outils de packt.

+0

merci Steve. Que se passera-t-il lorsque quelqu'un achètera une commande dans l'un de nos magasins sur PayPal lorsque nous commencerons à le déployer? Normalement, une fois la transaction Paypal confirmée, nous confirmons et créons la commande pour l'administrateur de la boutique, mais maintenant cette personne paierait sur paypal et verrait le html de maintenance de redirection au lieu d'obtenir la page de confirmation de commande. En outre, l'ordre semblerait "perdu"? – Jorre

+1

Vous pouvez contrôler qui obtient la page de maintenance par ip ou nom de domaine, vous devriez donc être en mesure de détecter la redirection de paypal. Puisque vous parlez d'une solution de commerce électronique (quelque chose ne figure pas dans votre question initiale). Vous pouvez donner beaucoup de préavis et verrouiller le site à de nouvelles commandes. vous pouvez alors vérifier votre db pour les sessions ouvertes ou les transactions en attente, une fois que celles-ci sont terminées, vous pouvez ensuite afficher la page de maintenance à tout le monde. –

+0

À tout le moins, vous pourriez ajouter du texte à la page de maintenance que vous faites de la maintenance et qu'ils seront en mesure de se connecter et de récupérer leur commande sous peu (je suppose un produit téléchargeable électronique). –