【问题标题】:Class 'controller' not found in codeigniter 1.6.1在 codeigniter 1.6.1 中找不到类“控制器”
【发布时间】:2015-03-09 17:54:29
【问题描述】:

我正在使用 Codeigniter 开发一个应用程序,并且我想通过一系列脚本运行每天一次的 cronjobs。早些时候,这在另一个主机上正常工作,但在迁移后停止工作,因为我必须重新创建这些 cronjobs。

我想整天运行这个文件/web/_cronjobs/application/controllers/updates.php。这会在数据库中更新网络内部统计数据,最重要的是更新站点地图。这是代码:

http://pastie.org/10012554

我正在从 PuTTY 运行此语句:

/usr/bin/php5.5 /kunden/homepages/45/*******/htdocs/web/_cronjobs/application/controllers/updates.php

但它显示了这个错误:

(uiserver):*********:~ > /usr/bin/php5.5 /kunden/homepages/45/d566577055/htdocs/web/_cronjobs/application/controllers/updates.php
X-Powered-By: PHP/5.5.20
Content-type: text/html

<br />
<b>Fatal error</b>:  Class 'Controller' not found in <b>/homepages/45/d566577055/htdocs/web/_cronjobs/application/controllers/updates.php</b> on line <b>3</b><br />

我已经提出了这个可行的解决方案,但它仍然与我使用的 codeigniter 版本相同,即 1.6.1 而不是 2.0:

codeigniter 2.0 Fatal error: Class 'Controller' not found in

希望有人能帮助我,谢谢! :)

【问题讨论】:

    标签: php codeigniter controller cron


    【解决方案1】:

    您已将控制器类放入文件并尝试直接调用它。这行不通。

    您的具体错误的原因是未包含 Controller 类。当您通过框架运行事物时,这通常由 CodeIgniter 完成。但由于您似乎是直接调用该文件,因此 CodeIgniter 尚未加载,无法帮助您。

    其次,该文件中的代码只是一个类。我看不到应该与类或任何东西交互的代码。因此,即使存在 Controller 类,也不会发生任何事情。

    我建议你阅读这个简短的教程CodeIgniter - Running via the CLI

    【讨论】:

    • 我认为之前有一个脚本调用了这个控制器,最后一个托管管理员在你的服务器上。我完全迷失了,不知道如何将这些功能作为可编程作业(cronjob)执行。感谢您的帮助。
    【解决方案2】:

    试试这个:

    /usr/bin/php5.5 /kunden/homepages/45/*******/htdocs/web/_cronjobs/index.php updates
    

    【讨论】:

    • 我尝试并出现了一个错误:未定义的索引: /homepages/45/d566577055/htdocs/web/_cronjobs/application/config/config.php 中的 SCRIPT_URI config.php 中的那一行: if (substr($_SERVER['SCRIPT_URI'], -9)=='index.php' || substr($_SERVER['SCRIPT_URI'], -10)=='index.php/') { header('位置:'.$config['base_url'], TRUE, 301); } 谢谢瓦伦丁
    • 在 _cronjobs 文件夹中创建另一个 php 文件,例如 chron.php 并在那里执行此操作 $data = file_get_contents('http://www.your-domain.com/updates'); 然后 '/usr/bin/php5.5 /kunden/homepages/45 /*******/htdocs/web/_cronjobs/chron.php' 您可能需要修改 .htacces 文件以允许访问 chron.php。请试试这个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-18
    • 1970-01-01
    • 2022-08-13
    • 2018-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多