Outils pour utilisateurs

Outils du site


devweb:laravel:cron (lu 11213 fois)

Table des matières

Cron

Pour certaine taches, il est utile de lancer un script via le cron. Dans ce script vous allez surement avoir besoin du framework pour vous connecter à la base de données ou utiliser des classes etc…

Voici 2 méthodes :

Par wget

Vous faites votre script comme d’hab, vous rajouter une route qui va bien par exemple

Route::get('check',function(){
  // code exécuté par le cron
}

Puis dans votre cron vous mettez la commande suivante.

/usr/bin/wget -q --spider http://votre-site.com/check

Par php

Créer votre fichier php par exemple cron.php à la racine de votre projet laravel, là ou il y a artisan, puis rajoutez le code suivant en haut de votre script.

// Intégration du framework
require __DIR__.'/bootstrap/autoload.php';
$app = require_once __DIR__.'/bootstrap/start.php';

Pour Laravel 4.1, ajoutez la ligne suivante

$app->boot();

Sinon vous risquez d’obtenir le message d’erreur suivant.

PHP Fatal error:  Call to a member function connection() on a non-object in /home/laravel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php 
...

Puis dans votre cron vous mettez la commande suivante.

/usr/bin/php /var/www/votreprojet/cron.php
devweb/laravel/cron.txt · Dernière modification: 24-10-2014 15:46 de edmc73