Re: PHP + Cron jobs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Shawn McKenzie wrote:
Shawn McKenzie wrote:
Waynn Lue wrote:
Yup, you're completely right.  I checked the cronjob and got this:

PHP 5.2.6 (cgi) (built: Aug 11 2008 13:39:32)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
   with Advanced PHP Debugger (APD) v0.9, , by George Schlossnagle

Turns out there's /usr/bin/php, which is the cgi version, and
/usr/local/bin/php, which is the cli version.  So I see three possiblities.
1. Change the shebang on the php script itself, 2. change the crontab to
reflect to path I care about, or 3. replace /usr/bin/php.  I'd prefer the
3rd, but does that cause problems for me in my actual web pages?

Thanks,
Waynn

Depends upon whether your webserver is using the PHP CGI binary or the
apache module.  I thought common convention was that the CGI was named
php-cgi?

I would rename '/usr/bin/php' to '/usr/bin/php-cgi', grep your web
server conf file(s) for /usr/bin/php and if found then change it to
/usr/bin/php-cgi.

-Shawn

Along with that, I would opt for always using the full path in the cron job.

-Shawn

see I don't use cron; I run small scripts from the command line that fork then run forever on a while loop with a sleep.. so:

worker.php
<?php
include '/path/to/maininclude.php';

$pid=pcntl_fork();
if(!$pid) {
  while(1) {
    $work = new work_object;
    if( $job = $work-getJobs->('thisjob') ) {
      // i have something to do, and doing it here
    } else {
      sleep(10);
    }
  }
} else {
  echo "\ndaemon launcher done id $pid\n";
}
?>

or you can run say 10 versions at the same time for things where multi-process helps (scrapers, whois checks etc)

controller.php
<?php
include '/path/to/maininclude.php';

for($icount=0;$icount<11;$icount++)  {
	include './worker.php'; //spawn 10 workers
}
?>

just my preference :)

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux