Comment résoudre le problème si la tâche planifiée de yii2 échoue
J'ai écrit un script en utilisant la console de Yii2 et l'a exécuté sur la ligne de commande. Tout va bien. Il a été mis dans cron et exécuté à temps, mais l'effet d'exécution était erroné et le résultat de l'exécution du script de console était erroné.
Après vérification, cela est dû au problème de chemin php du script yii (yii sous le répertoire racine)
Vous devez remplacer la première ligne du code suivant, php, par le chemin sur votre serveur
#!/usr/bin/env php <?php /** * Yii console bootstrap file. * * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('YII_ENV', 'dev'); require(__DIR__ . '/vendor/autoload.php'); require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php'); require(__DIR__ . '/common/config/bootstrap.php'); require(__DIR__ . '/console/config/bootstrap.php'); $config = yii\helpers\ArrayHelper::merge( require(__DIR__ . '/common/config/main.php'), require(__DIR__ . '/common/config/main-local.php'), require(__DIR__ . '/console/config/main.php'), require(__DIR__ . '/console/config/main-local.php') ); $application = new yii\console\Application($config); $exitCode = $application->run(); exit($exitCode);
Ou ajoutez un lien symbolique vers le fichier exécutable PHP sur le serveur
ln -s /usr/local/php/bin/php /usr/local/bin/ php
ln - s Le chemin absolu où le fichier actuel doit être placé
Recommandé : "Tutoriel YII"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!