2010-09-17 61 views
3

我已經編寫了一個程序,使用fsockopen()fgets()來讀取網上的網站內容或從網上將文件下載到我的服務器上。PHP中的多個進程

它使用While命令來接收標題。問題是:當腳本正在處理While時,唯一客戶端無法在我的網站上請求另一個頁面,它將等到While()完成處理。

有什麼辦法可以解決這個問題嗎?

+0

你在什麼樣的環境中運行?像Apache這樣的多線程Web服務器通常應該處理這個問題...... – deceze 2010-09-17 05:12:53

+0

它已經在Apache 2上運行,但是LocalHost ...有什麼區別? – 2010-09-17 05:26:36

+0

可能有。但是,你的問題並不清楚。 您製作了一個腳本來從網絡讀取數據。看起來你正在重載你的服務器,如果你通過Apache運行這個腳本。 Apache很好地處理了多個請求。你使用的是Windows還是某種nix? – 2010-09-17 07:42:54

回答

0

這是一個多session_start()調用問題! 我在session_start()開始的文件末尾使用了session_write_close(),現在一切正常。 謝謝大家。

0

我們在項目中使用Process Forking。據我所知它只適用於* nix系統。也可以在沒有網絡服務器的情況下運行。

0

你一定是錯誤地編碼了你的php腳本。

或者,也許,您的網絡服務器存在問題。

+0

我甚至無法加載其他頁面,但它在循環中:(( – 2010-09-17 12:11:25