我已经引用了http://bakery.cakephp.org/articles/view/calling-controller-actions-from-cron-and-the-command-line并创建了cron_dispatcher.php并将其放在app文件夹中 .
我已经为我的用户控制器的测试方法中的cron作业返回了一些测试电子邮件功能 .
我在我的网络服务器的控制面板中创建了一个Cron作业
"/usr/bin/php/home4/enventur/public_html/pennystock/cron_dispatcher.php /users/test"
但它给我一个错误,因为“没有指定输入文件 . ”
请帮帮我,怎么解决?
提前致谢
3 回答
我以不同的方式做到了,
请看看步骤,它可能对其他人有帮助..
使用Cakephp框架结构的Cron / Shell:
F:\websites\projectname\app\vendors\shells\filename.php
2.设置754权限
F:\websites\projectname\cake\console\cake
/home4/enventur/public_html/pennystock/cake/console/cake -app "/home4/enventur/public_html/pennystock/app" ClassName >/dev/null 2>&1
谢谢Nidhin
听起来像PHP无法找到您指定的文件 . 检查路径是否正确 . 例如:
现在,下一部分并不值得注意CakePHP shells是出于这个目的 .
如果您创建了一个名为
Mailer
的shell并将UsersController::test()
代码复制到MailerShell::test()
,那么您可以像这样从cron
调用它(再次检查路径是否正确):/home4/enventur/public_html/pennystock/cake/console/cake -app /home4/enventur/public_html/pennystock/app mailer test
使用这种方法,您不必使用
cron_dispatcher.php
,如古老的面包店文章(4年前圣诞节为CakePHP 1.1编写)中所述 .cron作业是一个长时间运行的进程,它在特定的日期和时间执行命令 .
转到您的域cpanel帐户 .
首先使用cron job生成要运行代码的文件 . 并将文件上传到您的网站根文件夹 .
现在转到cpanel帐户中的“Cron作业”部分,在文本框中输入文件路径,并设置要运行文件的时间 .
谢谢 .