如何testing像WAMP这样的本地服务器的cron作业?

如何testing像WAMP这样的本地服务器的cron作业?

Windows没有Cron(这是Linux系统的主要任务调度程序)。 Windows的版本是Task Scheduler 。 这个问题建议使用at命令。

因此,Cron与Apache,Mysql,PHP的安装程序没有任何关系。我不认为可以可靠地测试你为Windows Cron创建的cronjob(可能是Cygwin )。

您可以创建一个HTML页面并在浏览器中打开它。 javascript setInterval函数将调用指定的时间段。

以下是执行此操作的代码。 指定你的时间间隔(例如每5秒运行5000次)

 <html> <head> <title>Cron</title> </head> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <body> <h1>Cron page</h1> <script type="text/javascript"> setInterval(function(){ $.get('http://localhost/test/test.php', function(data) { console.log(data); }); }, 5000); </script> </body> </html> 

注意:为避免CORS,您应该从同一主机调用ajax,或者从服务器端允许CORS。

你可以直接从URL运行你的脚本,也就是说如果你想从cron设置运行cron_test.php脚本,并且你想测试结果是一样的,那么你可以直接从localhost运行这个文件,如http://www.localhost/ XXXX / cron_test.php 。

只需从命令行运行该作业即可。 这是你想测试的工作,而不是cron本身。 如果您需要定期执行以模拟cron,请使用Windows“计划任务”工具

安装cron(是的,它可用于Windows )。

不想在Windows上这样做。 你可能会更好地抓住一个VirtualBox的副本,并创建一个更好的类似于你的生产环境来做你的开发。

你可以只用一行就可以在windows环境下工作。 我几乎花了我5个小时,所以我想与其他人分享是一个任务。

  • 在程序中给php.exe的路径,与我的安装是c:\ wamp \ bin \ php \ php5.3.5 \ php.exe。
  • 其次你必须把文件的绝对路径,你想运行。 -fc:\wamp\www\foo\foo.php在参数中

所以这是完整的。 没有必要安装任何东西。

你可以运行这个:

 set_time_limit(0); ignore_user_abort(true); while (1) { //your code here.... sleep($timetowait); } 

您可以关闭浏览器,脚本将继续

set_time_limit(0); 使您的脚本没有时间限制的工作

sleep($timetowait); 确定在执行while()的下一个循环之前要等待的时间

ignore_user_abort(true); 即使浏览器关闭,也要继续执行脚本

while(1)是一个无限循环,所以这将永远不会停止,直到你退出wamp。

试试这个commnad

 <?php echo exec('0 13 * * * D:\wamp\bin\php -f D:\wamp\www\be.php'); ?> 

<meta http-equiv="refresh" content="0; url=http://localhost/myproject/cron.php" />

立即设置一个元刷新:每5秒content = 0:content = 5

你是什​​么意思“一个cron工作”? 在很多网站上都有一个像“cron.php”这样的特殊页面,这个页面是周期性的,通常是这样的:

 0 * * * * wget http://example.org/cron.php 

在这种情况下,你只需要手动打你的cron php文件来模拟行为。