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