我想問問,如果有人知道一種方式,我可以延遲一個php腳本,而無需一直佔用連接插槽。我並沒有完全意識到這一點,但我被告知,Apache有一個連接限制或腳本的限制在同一時間運行,我不能完全回憶,我的腳本需要運行約1至3小時,它實際上並沒有做任何重要的事情,它實際上睡眠時間爲90%。延遲php腳本沒有佔用連接
回答
如果您正在運行腳本並且不期待任何響應,則可以使用php "dir/to/php/script.php"
在服務器計算機的終端中運行它。
如果腳本的初始化發生在遠程,那麼您可以讓腳本退出,以便腳本繼續運行,但不會保持連接處於活動狀態。 header('Connection: Close');
例子:
<?php
echo "The server is now doing some complex actions in the background..."; //even maybe a redirect instead
header('Connection: Close');
file_put_contents(file_get_contents("largest_file_in_the_world.txt"),"/tmp/test.txt");
?>
這正是我一直在尋找的東西!謝謝!我只是還有一個與此有關的問題。如果我決定我需要停止腳本有沒有辦法,我可以做到這一點,而無需重新啓動Apache? –
我建議讓'script.php'調用一個在後臺運行的bash文件。這樣,你可以稍後殺死bash文件而不是殺死apache。例如:'exec('nohup script.sh')' - >'php'script.php''。 –
謝謝!我會對bash文件做一些額外的研究^^ –
此外,剛剛發送的連接:密切頭是不夠的,這裏是如何連接被關閉:
ignore_user_abort(true);
header("Connection: close", true);
header("Content-Length: 0", true);
ob_end_flush();
flush();
fastcgi_finish_request();
- 1. 沒有腳本暫停/延遲的PHP定時器
- 2. GPS連接延遲
- 3. TcpClient連接延遲
- 4. 延遲Jython腳本
- 5. 延遲ajax腳本
- 6. 延遲jQuery腳本
- 7. PHP - MySQL連接超時延遲
- 8. 在php中延遲加載java腳本
- 9. PHP腳本延遲短信發送?
- 10. 診斷EclipseLink連接延遲?
- 11. Android的3G連接延遲
- 12. 關閉延遲連接
- 13. 鉻WebSocket連接延遲
- 14. MeteorJS連接延遲問題
- 15. jQuery的延遲腳本
- 16. 腳本延遲可靠嗎?
- 17. 的Youtube腳本延遲
- 18. 延遲腳本不工作
- 19. PHP的回聲輸出沒有延遲?
- 20. 有沒有辦法看到哪個PHP腳本佔用CPU?
- 21. Box2d:沒有慣性延遲的鼠標連接
- 22. 延遲查詢沒有出臺 - Jscript腳本
- 23. 腳本正常工作,但沒有執行延遲
- 24. 用php腳本連接到數據庫,但沒有返回值
- 25. 腳本導致鏈接有一個定時延遲
- 26. 應用腳本而不加載延遲
- 27. 腳本用於延遲程序啓動
- 28. 如何延遲沒有time.sleep?
- 29. Excel VBA Sendkeys沒有延遲
- 30. updateTabsetPanel現在,沒有延遲
如果」重新更新與PHP腳本的東西,要麼運行它的服務器端(沒有瀏覽器,只是命令行),或告訴PHP腳本只是運行和退出(客戶端顯示空白屏幕,可以C失去他們的瀏覽器)。 'header('Connection:Close');'。 –
這就是我一直在尋找的東西!謝謝! –
[早期關閉連接]的可能重複(http://stackoverflow.com/questions/138374/close-a-connection-early) –