[英]Run a cron job from within a php file
我遇到一個問題,我的托管公司不允許我從控制台通過這種格式運行cron作業:
/usr/bin/php /home/sites/MYDOMAIN.com/index.php?option=com_community&task=cron
要么:
www.MYDOMAINNAME.com/index.php?option=com_community&task=cron
現在,如果我在瀏覽器中運行第二個作業,即:
www.MYDOMAINNAME.com/index.php?option=com_community&task=cron
這在瀏覽器中工作正常
我的支持者說我必須創建一個文件來運行URL。 唯一的問題是我不知道如何在PHP中運行URL。 我問了幾個站點。 但是什么都沒有。 我的文件名為bump.php
,具有以下代碼:
lynx -dump http://www.MYDOMAIN.com/index.php?option=com_community&task=cron
這是我在文件中所擁有的
<?php
echo file_get_contents('DOMAIN.com/index.php?option=com_community&task=cron');
?>
您必須通過網絡服務器訪問有問題的文件,而不是直接通過文件訪問。 如果通過文件訪問來訪問它,它將僅返回php代碼而不執行它。
關於如何通過網絡服務器訪問文件,有幾種選擇。 一種是顯示的file_get_contents
方法。 您將需要在URL前面添加http://
,以告訴PHP您希望其遠程訪問而不是作為本地文件訪問。
並非始終將file_get_contents
配置為允許遠程下載文件。 在這些情況下,它將不起作用。 您可以檢查此鏈接以查看用於遠程訪問文件的配置設置: http : //www.php.net/manual/zh/filesystem.configuration.php#ini.allow-url-fopen
另一個解決方案是使用curl擴展(如果有)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
http://www.php.net/manual/zh/function.curl-exec.php
如果curl也不可用,還有其他擴展名...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.