On my website I use cron job on cpanel.
I have this code below in the construct area of controller but it stops the cpanel cron job from working.
if (!$t
To prevent direct access from a webpage:
you need to add this line
/* deny direct call from web browser */
if (isset($_SERVER['REMOTE_ADDR'])) die('Permission denied.');
with CI 3.0 you can
Make your cron-jobs inaccessible from being loaded in the URL by checking the return value of
is_cli()
.
is_cli()
returns TRUE if the application is run through the command line and FALSE if not.
as by my comment, the cpanel cron job pattern is:
/usr/bin/php /var/www/website/public_html/cli.php controller method
,
see docs here
related post
Solved now. CodeIgniter Cron Job through Cpanel
It seem to be a issue from path I had used. On cpanel before I had
php --silent http://mysubdomain.mydomain.co.nz/cron/message
That was not working proper if I wanted to use this code to prevent access
if (!$this->input->is_cli_request()) {
show_error('Direct access is not allowed');
}
php-cli /home/myusername/public_html/mysubdomain/index.php Cron message
All works fine now