
我想在本機上使用 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 腳本放置在
www
或public_html
目錄中,並在 cronjob 上正確呼叫路徑。
*/2 * * * * wget -q http://localhost//myscript.php