【问题标题】:No Direct Script Access Error for Cron JobCron 作业没有直接脚本访问错误
【发布时间】:2018-03-22 14:51:11
【问题描述】:

我正在为 cpanel 中 application/controllers/Cron.php 下的文件使用 cronjob

/usr/local/bin/php -q
/home/user/public_html/domain.com/application/controllers/Cron.php

但是我收到一个错误,因为不允许直接脚本访问。这是我的 Cron.php 文件。

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
set_time_limit(0);
ignore_user_abort(1);
class Cron extends CI_Controller {
    public function __construct(){
        parent::__construct();
        $this->load->library('session');
        $this->load->database();
        $this->load->config('mainconfig');
    }
    public function index(){
$i=0;
foreach($this->db->query("select * from instagram")->result_array() as $b):
                            $id[$i] = $b["id"]; 
                            $i++;
                    endforeach;
                    for ($i=0;$i<count($id);$i++)
$this->db->query("update instagram set poin=4 where id='".$id[$i]."'");
    }
}

谁能找到我为什么会这样。

【问题讨论】:

  • 这是你的问题defined('BASEPATH') OR exit('No direct script access allowed'),这条线是做什么用的?
  • 也许对这个控制器的路由做一个 wget 会更容易
  • 您还可以将代码缩减为更新后的选择

标签: php codeigniter cron cron-task


【解决方案1】:

您是直接调用脚本,而不是像普通 HTTP 请求那样通过控制器调用它,而是使用 curl/wget 请求来执行脚本

【讨论】:

    猜你喜欢
    • 2016-06-19
    • 2016-12-06
    • 2018-06-11
    • 2012-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多