php 安裝模式
首先我們必須先確認自己在linux ubuntu 伺服器上php的安裝模式,以cgi 模組還是apache模組方式安裝? 如果不確定php安裝模式,可以使用 phpinfo() 函式檢視:將<?php phpinfo(); ?> 寫在php檔案中上傳到**伺服器,訪問該頁面,就在頁面頂部我們找到「server api」,如果類似「apache 2.0 handler」,那麼就是apache模組;否則php是cgi 模式(shell 命令列模式)。這兩種不同的php安裝模式,正對應於前面介紹的ubuntu crontab 定時執行php的兩種解決方法。
cgi 編譯
如果server api是cgi,那麼在需要cron執行的php指令碼的第一行額外加入一段**#!/usr/bin/php -q(類似perl語法),指定伺服器中php可執行程式的位置,具體步驟如下:
1. 確認ubuntu系統已經安裝了php5-cli模組,安裝命令:apt-get install php5-cli。在目錄 /usr/bin/php下生成 php可執行程式。
2. 編輯待定時執行的php指令碼檔案crontab.php,如:
#!/usr/bin/php -q
<?php
$file = 「/var/www/」.date(『h』).』_』.date(『i』).』_』.date(『s』).』.txt』;
file_put_contents($file,date(『y-m-d』));
?>
3. 編輯 crontab 任務:
開啟終端,輸入命令:crontab -e,
select an editor. to change later, run 『select-editor』.
1. /bin/ed
2. /bin/nano <—- easiest
3. /usr/bin/vim.tiny
# m h dom mon dow command
在下面新增定時執行命令:
* * * * * php /path/to/your/cron.php
5個星號分別代表定時指定每分、小時、日、月、周。如每天的下午7點執行crontab.php,命令為:
* 19 * * * php /var/www/cron/crontab.php
然後按ctrl+o儲存,ctrl+x退出。
4. 執行以下crontab命令列
shell> crontab crontab
確認crontab.php的許可權為可執行("chmod 755 /var/www/cron/crontab.php")。
apache 模組
如果php安裝是以 apache 模式執行的,那麼在要在ubuntu伺服器定時執行的php指令碼開頭就不用加 #!/usr/bin/php -q 這一行。php指令碼在ubuntu 通過crontab的定時執行通過lynx瀏覽器的自動訪問來完成。
1. lynx瀏覽器安裝。
lynx瀏覽器是一款輕便的web瀏覽器,使用於大部分unix 和linux系統環境。安裝命令:sudo apt-get install lynx。
2. 編輯cron任務,命令crontab -e
* * * * * lynx -dump
注意這個位址最好用絕對位址,包含「http://」的完整url。
3. 再次執行下面的命令列:
shell> crontab crontab
因為我在ubuntu安裝的是lamp server,所以採用第二種apache 模組的方法就可以使用crontab定時執行php指令碼**。
crontab執行時間計算
利用Crontab定時執行Python指令碼
一 crontab操作crontab l 列出全部定時任務crontab e 編輯定時任務二 crontab格式第一列的 表示 分 第二列的 表示 時 第三列的 表示 日 第四列的 表示 月 第五列的 表示 周三 定時執行python指令碼 1 python3 test test.py 每小時執行一...
crontab定時執行php程式
定時任務一直就是應用程式不可少的功能,在php中,想要做定時任務,如果使用ignore user abort true 消耗資源。這裡用的是linux crontab任務計畫 常用選項 u 指定某個使用者,不加 u選項則為當前使用者 e 制定計畫任務 l 列出計畫任務 r 刪除計畫任務。使用 cro...
crontab定時執行命令
crontab 是系統守護程序 crontab file u user 用指定的檔案替代目前的crontab。crontab u user 用標準輸入替代目前的crontab.crontab l user 列出使用者目前的crontab.crontab e user 編輯使用者目前的crontab....