我正在尝试通过 cpanel 中的 cron 作业运行脚本。也许我输入了错误的路径,这就是为什么我收到邮件的原因:
无法打开输入文件。
这是我的代码
class Cron extends CI_Controller
{
public function run()
{
$this->load->library('email');
$this->email->to('to@mail.com');
$this->email->from('from@mail.com','From');
$this->email->subject('Cron');
$this->email->message('Hello);
$this->email->send();
}
}
此代码可用于
public_html/folder/myproject/application/controller/Cron.php
但是我不知道如何在cron url中设置此路径
答案 0 :(得分:1)
请在cpanel命令输入中尝试以下操作
wget -q -O - http://www.yourdomain.com/cron/run >/dev/null 2>&1
如果要通过文件执行相同的操作,请使用正确的路径
/home/youruserdirectory/public_html/folder/myproject/application/controller/Cron.php
将youruserdirectory
替换为当前用户目录。
希望这会有所帮助。
答案 1 :(得分:0)
根据您的代码判断,Cron
控制器必须从Web而不是从命令行调用,但这很好,您不必为cron job提供服务器上的路径。您可以像这样运行命令向您的网站发出请求:
*/5 * * * * /usr/bin/wget -qO- https://example.com/cron
示例中的命令将每5分钟向您的站点发出一次请求,每次都有效地运行Cron
控制器(以防您未阻止其名称通过路由对其进行访问)。