Cron 作业不会每 5 秒刷新一次页面



我正在尝试让我的页面每 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 Job。也许我需要看看另一种方式,然后PHP_SELF刷新。感谢您的提示。

你可以用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 的想法

最新更新