2010-05-10 63 views
1

我得到了一個正在循環的PHP腳本,並且在接下來的一個小時內會繼續這樣做。我該如何阻止它。該腳本顯式覆蓋超時和內存緩衝區。它在安裝了cPanel的共享託管服務器上。整個網站一直運行,直到腳本完成。幫助!我有一個失控的PHP腳本。我的服務器關閉了

我已經添加了usleep(100000)聲明,但它似乎不起作用。

+0

你試過服務器管理員在第一時間接觸代碼? – mingos 2010-05-10 12:17:44

+0

電子郵件支持。在我們滅絕之前,他們可能會回到我身邊。 – HyderA 2010-05-10 12:19:47

+6

這是在90年代的一擊,不是嗎? *♫♪失控腳本,永遠不會回來,在服務器機架上失控。我曾希望有一天你會暫停,但你仍在吃掉記憶♫♪* :) – Gordon 2010-05-10 12:23:17

回答

1

這是不可能的,你問服務器管理員殺死這個例程。更多的是,請避免在你的php中使用sleep(),usleep()函數。在Apache服務器和Linux操作系統中,Php具有執行這些功能的限制。

如果你想使用PHP與日期時間函數去使延遲...見下文

StrCp_Time = Now() Difference = DateDiff("s",Session("submittime"), StrCp_Time) '// Difference Between Two Dates(Seconds , LastSubmitTime , CurrentTime) If Difference > 10 Then '// 10 seconds

... Submit Form ...

End If Session("submittime") = StrCp_Time

2

如果腳本已經運行,除殺死進程/ web服務器/主機並重新啓動它之外,您無法執行任何操作。

0

認爲道德是,絕對不要超越他們,只是把他們提升到更高的層次。

+0

它是履帶。我不希望它很快停止。 – HyderA 2010-05-10 12:27:38

+0

您可以將執行時間提升到更好的級別(3小時或某事),然後在完成一定時間內的作業時結束並重新啓動該進程。 – 2010-05-11 11:20:48

1

首先與您的主人聯繫,並要求他們殺死這個過程。這是最好和最簡單的方法。

相關問題