2009-10-29 2 views
0

Est-il possible d'invoquer un shell de console CakePHP sur un serveur sans accès au shell? J'ai écrit un shell pour effectuer des tâches de mise à jour de DB postérieures (et donc pas une tâche cron).Appel d'un shell de console CakePHP sur le serveur sans accès par ligne de commande

Je pouvais toujours simplement copier la logique dans un contrôleur temporaire, appeler ses actions via http et ensuite le supprimer, mais je me demandais s'il y avait une meilleure façon de procéder.

Répondre

1

Il semble que ce soit un script en dehors, vous voudrez peut-être généralement courir après les mises à jour DB droite?

Si tel est le cas, vous pouvez le faire partie de votre « script de mise à jour DB »

Si vous utilisez quelque chose comme Capistrano, vous pouvez inclure aussi. Dans tous les cas, si vous ne voulez pas toucher le shell, je suis d'accord qu'ayant un contrôleur pour appeler le code de la console (ou n'importe quel fichier php exécutant exec() comme mentionné précédemment) ferait l'affaire.

Aussi, si vous voulez exécuter une seule fois et l'avoir prévu - ne pas oublier que vous avez la commande « à » (au lieu de Cron) qui lancera à cette date prévue (voir http://linux.about.com/library/cmd/blcmdl1_at.htm)

Hope it helps,

Cheers,

ps: si sa coquille de console et que vous ne voulez pas l'exécuter à partir de la console, puis il suffit de ne pas en faire une coquille de console.

1

Je suis d'accord avec elvy. Puisque c'est quelque chose que vous devez faire une fois de temps en temps après que d'autres événements se soient produits, pourquoi ne pas simplement créer une zone 'admin' pour votre application et coller le code pour cette mise à jour?

Questions connexes