2011-12-16 57 views

回答

0

也許嘗試使用set_time_limit()功能此腳本。

或者創建一些php腳本併爲其隨機生成一個url。

-1

您是否嘗試在頁面重新加載時將XMLHttpRequest對象設置爲null?

0

不直接。您需要設置一個方案,將工作轉移到外部(到Web服務器)進程,並且該進程與Web服務器建立了通信通道,使其能夠檢查每個工作是否應該放棄它所做的工作(例如,一個簡單但不理想的方案將檢查「鎖定文件」的最後修改時間;如果它過去超過X秒,則放棄該任務)。

然後,您的網頁會調用腳本,然後適當地「保持」後臺任務(例如通過觸摸前面示例的鎖定文件)。

這樣,當通過AJAX請求啓動任務時,客戶端開始向服務器發出「保持活動」請求,服務器將「保持活動」消息轉發給外部進程。如果用戶重新加載頁面,則「保持活動」請求停止,並且當保持活動閾值消逝時,工作進程將中止。如果一切順利並且工作完成,您的服務器將通過它與工作進程之間的通信通道檢測到這一情況,並在下一次保持活動狀態「ping」時將其報告給客戶端。