Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在direct admin中使用cron作业调用php页面_Php_Cron - Fatal编程技术网

在direct admin中使用cron作业调用php页面

在direct admin中使用cron作业调用php页面,php,cron,Php,Cron,我有一个发送电子邮件的php文件,当我用浏览器打开页面时,它工作正常。(test.php位于我网站的根目录中)但我希望该页面每天自动运行一次。我发现这是使用cron作业完成的。我搜索了很多,测试了很多命令和配置,但都不起作用。 我对所有时间字段都使用*,假设它每分钟都会运行(我不喜欢等待数小时来测试每个配置) 我测试了以下命令和许多我不记得的命令): 最后,我不知道我做错了什么。 该主机是运行Direct Admin的共享linux主机 请告诉我一个简单的步骤指南,设置cron作业来运行我的ph

我有一个发送电子邮件的php文件,当我用浏览器打开页面时,它工作正常。(test.php位于我网站的根目录中)但我希望该页面每天自动运行一次。我发现这是使用cron作业完成的。我搜索了很多,测试了很多命令和配置,但都不起作用。 我对所有时间字段都使用*,假设它每分钟都会运行(我不喜欢等待数小时来测试每个配置) 我测试了以下命令和许多我不记得的命令):

最后,我不知道我做错了什么。 该主机是运行Direct Admin的共享linux主机

请告诉我一个简单的步骤指南,设置cron作业来运行我的php文件。
谢谢

如果要通过http运行脚本,您不想调用PHP二进制文件。您想使用wget(或curl)。例如:

*/5 * * * * user /usr/bin/wget http://yoursite.com/cron.html -q -O /dev/null
其中user是运行该命令的操作系统用户


如果您没有权限(共享主机)执行类似操作,请更改为使用某个提供商提供的VPS实例或使用在线cronjob服务,如。

您可以使用lynx命令行浏览器打开页面:

lynx -dump http://www.google.com/ > /dev/null
或者使用类似的服务

更新: 如果您在控制面板中设置了一个cron作业,但它没有运行,那么很可能是您的web主机禁用了它


我的建议是使用cronless之类的cron作业服务。

好吧,你必须了解这是如何在你的服务器上完成的,不要只是复制粘贴我写的内容,这只是一个例子。你的wget二进制文件在哪里?不要使用-q选项并在shell中手动运行它来查看发生了什么。不幸的是,我的托管公司没有提供足够的关于二进制文件位置的信息。我联系了他们,但他们没有关于这个问题的信息。我想知道是否有办法自己找到它,例如从phpInfo()信息。此外,DirectAdmin不接受命令行中的*s。我必须在文本框中输入它们。也许这也有助于将“/home/myUserID/”写入正在添加的cron作业的命令框中。如果您在共享主机上,请不要这样做。要么改为有根用户的VPS主机,要么使用cron服务,比如。我想我应该使用你说的服务。谢谢。cronless.com工作正常,但我想使用我自己的主机的功能。你能告诉我执行命令时会发生什么吗?我的主机(DirectAdmin)的控制面板中有一个cron作业页面。我设置时间值,然后输入命令,然后通过单击“添加”按钮将cron作业添加到列表中。然后,什么也没发生。。。我等待着,脚本根本没有运行,因为我没有收到任何电子邮件。
lynx -dump http://www.google.com/ > /dev/null