2011-06-29 17 views

Respuesta

13

Encuentra el archivo crontab y añada esta línea:

0 0,12 * * * curl --silent --compressed http://mydomain/index/cron 

También puede hacerlo con otras herramientas, como el lince o wget, no necassarily rizo - lo anterior es solo un ejemplo.

5

Sé que soy poco tarde, pero me gustaría dejar otra solución, tal vez ayudar a otras personas, podría ejecutar el archivo en cron si usted tiene su regla de negocio dentro del modelo

Al crear un archivo en el carpeta pública con el contenido a continuación. Ej .: cron.php

<?php 

// Define path to application directory 
defined('APPLICATION_PATH') 
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); 

// Define application environment 
defined('APPLICATION_ENV') 
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development')); 

// Ensure library/ is on include_path 
set_include_path(implode(PATH_SEPARATOR, array(
     realpath(APPLICATION_PATH . '/../library'), 
     get_include_path(), 
    ))); 

/** Zend_Application */ 
require_once 'Zend/Application.php'; 

// Create application, bootstrap, and run 
$application = new Zend_Application(
      APPLICATION_ENV, 
      APPLICATION_PATH . '/configs/application.ini' 
); 
$application->bootstrap(); 

$model = new Application_Model_Name(); 
$model->runTask(); 

A continuación, añada una entrada cron tab

0 0,12 * * * php /path/to/your/project/cron.php 

que debería funcionar mejor que la primera respuesta, ya que se ejecutará utilizando PHP CLI, entonces no tendrá límite de tiempo de ejecución de php script, en caso de que su script dure más de un minuto y no necesite conexión de red para ejecutar ese trabajo cron

Cuestiones relacionadas