【问题标题】:Cron Job not refreshing page every 5 secondsCron Job 不每 5 秒刷新一次页面
【发布时间】:2018-04-11 12:44:24
【问题描述】:

我试图让我的页面每 5 秒刷新一次以更新数据。尽管 Cron 每 1 分钟运行一次。所以我尝试将我每 5 秒加载一次的页面合并到页面中。

我的 Cron 工作是: /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php

这似乎更新了我的代码,虽然每分钟只有一次。

我创建的btc-fetch.php 页面是:

<?php
    $page = $_SERVER['PHP_SELF'];
    $sec = "5";
 ?>
<html>
<head>
<meta http-equiv="refresh" content="<?php echo $sec?>;URL='<?php echo $page?>'">
<meta name="robots" content="noindex">
<meta name="googlebot" content="noindex">
</head>
<body>
<?php
    $url = "https://www.bitstamp.net/api/ticker";
    $fgc = file_get_contents($url);
    file_put_contents('/home/cplpc/public_html/data/btc-the-price', $fgc);
    echo $fgc;
?>
</body>

任何指导或方向将不胜感激。如果我在浏览器中打开了 btc-fetch.php,则此脚本有效,但我认为这是因为“它在浏览器中”?有没有办法完成同样的任务?

* 感谢您的回复

我将 cPanel 用于 Cron 作业。也许我需要看看另一种方式,然后 PHP_SELF 刷新。感谢您的提示。

【问题讨论】:

  • 嗯....您发布的内容是为了在网络和网络浏览器上运行,而不是 cron。
  • 解决方案:将您的 cron 修改为每 5 秒运行一次。你想把这个作为答案吗?编辑:或者 cron 允许的任何最短时间。
  • @FunkFortyNiner conjobs 只能每分钟运行一次。这是最小的间隔。
  • 你应该重新阅读 Cron Jobs 是什么以及它是如何工作的。 @FunkFortyNiner,我认为你不能让它们的间隔低于 60 秒? askubuntu.com/questions/800/…
  • ^ 不知道这是什么意思。

标签: php cron


【解决方案1】:

您可以使用 cronjobs 来做到这一点,但这可能不是一个很好的方法。

* * * * * /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 5 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 10 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 15 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 20 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 30 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 35 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 40 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 45 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 50 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 55 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php

问题:如果您的 PHP 脚本运行时间超过 5 秒,您最终会得到大量已使用(阻塞)的资源。

想法来自https://stackoverflow.com/a/9619449/9618184

【讨论】:

  • 谢谢@BinarWeb 我设法让它工作。做这项工作。它召回的我的信息只有 1 行,这是服务器上唯一的一行,所以一切都很好。谢谢:-)
  • 没问题。很高兴我能帮上忙!
猜你喜欢
  • 2016-03-21
  • 2016-03-10
  • 2014-10-16
  • 1970-01-01
  • 1970-01-01
  • 2015-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多