無法為 php 腳本執行 cron 作業

無法為 php 腳本執行 cron 作業

我想在本機上使用 cron 作業執行 php 腳本。我的腳本位於:

/opt/lampp/htdocs/rrugd/myscript.php

由於 opt 位於 root 下,因此我嘗試為 root 以及普通使用者新增 cron 作業,但它沒有執行。這是每 2 分鐘執行一次 php 腳本的 cron 作業:

*/2 * * * * php /opt/lampp/htdocs/rrugd/myscript.php

我的腳本基本上是為了從資料庫中截斷表。它實際上會在午夜發生,因此 cron job 的實際變數將更改為

00 00 * * * php /path/to/script.php

但為了測試我每兩分鐘使用一次。我在互聯網和 AU 上進行了搜索,但我無法讓它運行。我看到了一些與設定 PATH 相關的內容,但我不明白該方法中到底要做什麼。

另外,我想指定 PHP 腳本myscript.php不使用 PHP 命令在 CLI 上執行,但是當透過本機主機上的瀏覽器執行或呼叫時,它會執行!

PHP資訊:

some@somepc$: php -v
PHP 5.5.3-1ubuntu2.2 (cli) (built: Feb 28 2014 20:06:05) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies

答案1

假設其php5;有使用 php 進入 cronjob 的實例。您可以透過以下方式嘗試其中一種;

  • 為了php5在終端中使用,您需要php5 cli安裝。首先,檢查php5 & cli功能是否可用。為了那個原因;
johan@ubusrv:~$ php -v
PHP 5.2.4-2ubuntu5.3 與 Suhosin-Patch 0.9.6.2 (cli)(建置時間:2008 年 7 月 23 日 06:44:49)
版權所有 (c) 1997-2007 PHP Group Zend Engine v2.2.0,
版權所有 (c) 1998-2007 Zend Technologies

該命令顯示您的 php5 版本以及已安裝的 php5 (cli)。如果沒有,請使用以下命令安裝它;

sudo apt-get 安裝 php5-cli
  • 安裝後,您可以將php其二進位路徑新增至 cronjob,如下所示;

使用php或者php5

*/2 * * * * php /opt/lampp/htdocs/rrugd/myscript.php

使用php二進位路徑

*/2 * * * * /usr/local/bin/php /opt/lampp/htdocs/rrugd/myscript.php

您也可以使用以下命令來查找您的位置php/php5路徑是;

johan@ubusrv:~$ 哪個 php
/usr/bin/php

johan@ubusrv:~/cli$ 其中 php
php: /usr/bin/php /usr/share/php /usr/share/man/man1/php.1.gz

johan@ubusrv:~/cli$ 類型 -a php
php 是 /usr/bin/php
  • 在其他地方,如果您需要使用 URL 呼叫 php 腳本;你可以簡單地使用山貓,捲曲或者獲取。確保您已將 php 腳本放置在wwwpublic_html目錄中,並在 cronjob 上正確呼叫路徑。
*/2 * * * * wget -q http://localhost//myscript.php

更多關於: PHP Cron 作業:如何在 Linux 中使用 Crontab 執行 PHP 腳本

相關內容