1. 程式人生 > >設定php指令碼永不過期

設定php指令碼永不過期

在Linux下執行2個php指令碼:queue.php,worker.php

queue.php,worker.php 2個指令碼實現的功能:接收&&處理日誌資訊
應用程式傳送日誌資訊是不定時的,但是queue,worker必須是常駐程序,一直開啟等待接收&&處理資訊,需要一直執行

在putty上操作執行指令碼,但是由於session會過期導致,php中斷執行,想要php指令碼一直執行,有2個方法

1.如果你的程式碼已經成熟了,你可以直接把php指令碼開成守護程序,讓指令碼一直執行

開啟守護程序的方法:
nohup php queue.php &
或
setsid php queue.php
[原理 nohup :讓程序忽略中斷退出發出的hangup訊號 sesid:讓程序不屬於此終端的子程序,那麼自然也不會受到中斷的hangup訊號的影響]

2.程式碼還在除錯階段,不開守護程序,如何使php指令碼在session過期以後繼續執行

路徑:/usr/local/php/etc/php-fpm.conf
有一個引數:request_terminate_timeout = 120  //預設值是120

修改這個引數的值為:0
這樣php指令碼在執行的時候就會永不過期了,session斷開以後,php指令碼仍會繼續執行
:)