我已經編寫了一個程序,使用fsockopen()
和fgets()
來讀取網上的網站內容或從網上將文件下載到我的服務器上。PHP中的多個進程
它使用While
命令來接收標題。問題是:當腳本正在處理While
時,唯一客戶端無法在我的網站上請求另一個頁面,它將等到While()
完成處理。
有什麼辦法可以解決這個問題嗎?
我已經編寫了一個程序,使用fsockopen()
和fgets()
來讀取網上的網站內容或從網上將文件下載到我的服務器上。PHP中的多個進程
它使用While
命令來接收標題。問題是:當腳本正在處理While
時,唯一客戶端無法在我的網站上請求另一個頁面,它將等到While()
完成處理。
有什麼辦法可以解決這個問題嗎?
這是一個多session_start()調用問題! 我在session_start()開始的文件末尾使用了session_write_close(),現在一切正常。 謝謝大家。
我們在項目中使用Process Forking。據我所知它只適用於* nix系統。也可以在沒有網絡服務器的情況下運行。
你一定是錯誤地編碼了你的php腳本。
或者,也許,您的網絡服務器存在問題。
我甚至無法加載其他頁面,但它在循環中:(( – 2010-09-17 12:11:25
你在什麼樣的環境中運行?像Apache這樣的多線程Web服務器通常應該處理這個問題...... – deceze 2010-09-17 05:12:53
它已經在Apache 2上運行,但是LocalHost ...有什麼區別? – 2010-09-17 05:26:36
可能有。但是,你的問題並不清楚。 您製作了一個腳本來從網絡讀取數據。看起來你正在重載你的服務器,如果你通過Apache運行這個腳本。 Apache很好地處理了多個請求。你使用的是Windows還是某種nix? – 2010-09-17 07:42:54