2012-03-01 93 views
0

我正在通過cli運行一個php腳本,因此它可以在後臺運行。這個腳本是全天候運行的。我該如何防止它關閉(關於錯誤,警告等),並在發生時馬上重新啓動?防止長時間運行PHP腳本關閉

在此先感謝!

+0

運行了一個小時,並每隔一小時。 – Alice 2012-03-01 17:10:20

+0

聽起來像cronjob工作? – Ismael 2012-03-01 17:14:07

+0

從無限循環的shell腳本中調用它? – Dmitri 2012-03-01 17:16:24

回答

1

您可以使用shell腳本在無限循環中調用php,並在後臺運行shell腳本。例如(有點簡單化)一個這樣的劇本,說「runloop.sh」:

#!/bin/bash 
# Run php script in a loop 
while true; do 
    php phpscript.php 
done; 

...然後在後臺運行該腳本,或者由init。從命令提示符:

$ ./runloop.sh & 

...在後臺運行腳本。它應該永遠運行,除非你以某種方式殺死它。


我要補充一點,你需要做的shell腳本可執行:

$ chmod +x runloop.sh 
+0

因此,只有在腳本沒有運行的情況下,該腳本纔會執行該腳本,對吧? – MGP 2012-03-01 17:37:11

+0

只要你只運行一個shell腳本的副本。它會調用php,等待它完成(可能來自一個錯誤),然後再次運行...一遍又一遍,直到你殺死腳本。 – Dmitri 2012-03-01 17:39:00

+0

那正是我需要:)非常感謝 – MGP 2012-03-01 17:43:05