我已在我的IIS(Windows Server 2008 SP2 x64)上安裝了用PHP編寫的AjaXplorer(非常漂亮的網頁文件管理器)。它對我來說太慢了。AjaXplorer [使用PHP編寫]在IIS上速度太慢
可能是什麼原因?在php.ini中有一些設置嗎?或者,也許,IIS有什麼問題?
我使用32位PHP,php-cgi.exe作爲解釋器。
Regards,
我已在我的IIS(Windows Server 2008 SP2 x64)上安裝了用PHP編寫的AjaXplorer(非常漂亮的網頁文件管理器)。它對我來說太慢了。AjaXplorer [使用PHP編寫]在IIS上速度太慢
可能是什麼原因?在php.ini中有一些設置嗎?或者,也許,IIS有什麼問題?
我使用32位PHP,php-cgi.exe作爲解釋器。
Regards,
首先,CGI將總是很慢。它需要爲每個請求啓動整個PHP運行時。嘗試使用FastCGI(If you're using IIS 7或if you're using IIS 6)...
之後,試着看看爲什麼它很慢。是因爲PHP腳本需要很長時間來執行(這意味着它是一個代碼問題),還是因爲服務器配置?爲了測試,修改到這個PHP程序(的index.php)的入口點開始:
define(START_TIME_CUSTOM, microtime(true));
function onEndTimeCompute() {
$timeTaken = microtime(true) - START_TIME_CUSTOM;
echo "Completed In: ".number_format($timeTaken, 4)." Seconds\n";
}
register_shutdown_function('onEndTimeCompute');
的寫Completed in n Seconds
到生成的輸出端(即使die()
被調用)。如果希望Ajax調用返回JSON,可能會導致一些問題,所以不要這樣做,只是爲了試圖弄清楚發生了什麼。
因此,如果總請求需要1秒,但您看到Completed in 0.004 Seconds
,您知道PHP代碼本身不是問題(它可能是CGI解釋器或IIS中的其他位置)。
這應該至少可以告訴你問題出在哪裏......
謝謝你,ircmaxell! – noober 2010-06-14 18:26:07
它在Apache上運行得更快嗎? – mario 2010-06-14 18:06:33