2011-09-07 131 views
7

嗨,如果我啓動我的瀏覽器並運行一個PHP程序(在另一臺服務器上),並且他們關閉了瀏覽器,程序仍然會繼續在服務器上運行,對吧?當瀏覽器關閉時PHP會在後臺運行嗎?

如果您運行該程序並且它們刪除服務器中的文件夾(程序運行時),該怎麼辦。假設它只有一個PHP文件,它會崩潰嗎?整個PHP文件在運行前是否在內存中讀取,或者系統是否定期訪問此文件?

回答

5

草稿已保存 首先,當服務器收到請求時,即使發出請求的瀏覽器關閉,它仍將繼續處理該請求,直至完成響應。

將PHP文件調用加載到內存中並進行處理,因此在處理過程中刪除文件不會導致任何內容崩潰。

但是,如果通過PHP中途引用另一個在代碼到達之前被刪除的文件,那麼它可能會崩潰(基於您的錯誤處理)。

但是請注意,導致PHP崩潰不會導致整個Web服務器崩潰。

+1

這不完全正確。查看其他答案。 – sanmai

+0

非常明確,歡呼。 –

5

按照PHP連接處理頁: http://php.net/manual/en/features.connection-handling.php

您可以決定是否需要在客戶端斷開造成 你的腳本將被中止。有時,即使沒有遠程瀏覽器接收到輸出,也始終讓 腳本運行完成,這很方便。

當然,您可以刪除包含PHP文件的文件或文件夾,只要它不直接在服務器上使用/打開即可。 否則,您永遠無法刪除網絡服務器上的文件,因爲它們可能始終處於使用狀態:-)

+1

這取決於所使用的服務器操作系統。例如。 Windows不允許刪除正在使用的文件,而Linux則可以。 – sanmai

相關問題