2010-08-06 53 views
1

我有一個網站,其中一個網頁需要10秒才能加載firefox,另外還需要10秒才能加載圖像。這是一個運行在apache上的php頁面。圖像只是靜態圖像。網站對Firefox非常慢,即時在其他瀏覽器上:KeepAlive問題?

它在鍍鉻上運行非常漂亮....即時裝載。

用google搜索答案已經指出我可能存在的一個問題是保持活着並且缺乏內容長度讓firefox混淆,實際上,內容長度似乎並未由服務器設置爲靜態或非靜態內容,但禁用服務器上的活動時間會使加載時間加倍!

有些網站建議停用瀏覽器,但我不願意推薦給所有瀏覽網頁的人!我是在吠叫錯誤的樹嗎?

瀏覽器是Lucid Lynx上的firefox 3.6.8。服務器是Apache 2.2.11。

apache.conf被取消了......我認爲這是一個開箱即用的方法,儘管我將KeepAlive超時減少到3,妄圖試圖加載頁面。

我吠叫錯了樹嗎?

ServerRoot "/etc/apache2" 

LockFile /var/lock/apache2/accept.lock 
PidFile ${APACHE_PID_FILE} 
Timeout 300 
KeepAlive On 
MaxKeepAliveRequests 100 
KeepAliveTimeout 3 
<IfModule mpm_prefork_module> 
    StartServers   5 
    MinSpareServers  5 
    MaxSpareServers  10 
    MaxClients   150 
    MaxRequestsPerChild 0 
</IfModule> 
<IfModule mpm_worker_module> 
    StartServers   2 
    MaxClients   150 
    MinSpareThreads  25 
    MaxSpareThreads  75 
    ThreadsPerChild  25 
    MaxRequestsPerChild 0 
</IfModule> 
User ${APACHE_RUN_USER} 
Group ${APACHE_RUN_GROUP} 
AccessFileName .htaccess 
<Files ~ "^\.ht"> 
    Order allow,deny 
    Deny from all 
</Files> 
DefaultType text/plain 
HostnameLookups Off 
ErrorLog /var/log/apache2/error.log 
LogLevel warn 
Include /etc/apache2/mods-enabled/*.load 
Include /etc/apache2/mods-enabled/*.conf 
Include /etc/apache2/httpd.conf 
Include /etc/apache2/ports.conf 
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined 
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 
LogFormat "%h %l %u %t \"%r\" %>s %b" common 
LogFormat "%{Referer}i -> %U" referer 
LogFormat "%{User-agent}i" agent 
CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined 
Include /etc/apache2/conf.d/ 
Include /etc/apache2/sites-enabled/ 
+0

你能鏈接到真實的網站嗎?這是重JS嗎? – 2010-08-06 22:57:57

+0

我已經在http://www.farnthropkelly.co.uk/ – ohp 2010-08-07 11:56:34

+0

上設置了一個測試網站我已經在該網站上發佈了一些時間安排...... DNS查找很好..目前我非常想認爲這個是一個奇怪的Firefox錯誤..將嘗試在Windows版本的Firefox,也許IE,或不同版本的Firefox。 – ohp 2010-08-07 12:46:25

回答

2

問題出在本地DNS查找。這個問題隱藏在命令行DNS解析看起來沒問題的事實上,而且chrome閃電般快。原來,鉻使用DNS預取,它不使用本地網絡堆棧。這使我完全錯誤的粘性。

創建本地綁定服務後,firefox似乎很好地工作。

因此,在與其他瀏覽器相同的平臺上運行chrome時需要注意一些事項。

1

請勿禁用保持活動狀態。它使得可以使用一個連接來獲取多個頁面(或圖像,或.js文件或.css文件等),從而顯着減少頁面加載時間。

只要確保您的腳本添加Content-Length標題,一切都會好的。

+0

我會看看php腳本,但不應該將apache的內容長度添加到靜態文件中嗎?來想一想,我從來沒有手動添加內容長度的PHP文件... – ohp 2010-08-07 10:19:51

+0

Apache應該這樣做,是的。但從修復容易的事情開始。內容長度問題可能會導致大塊傳輸問題,https以及我多年來看到的各種奇怪現象。只要按照規範來做:指定一個Content-Length。 – mvds 2010-08-07 10:35:15

+0

正在閱讀wc3規範,網址爲http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html,其中指出,在傳輸之前知道內容長度時應設置內容長度。如果內容是動態生成的,那麼確定價值的最佳做法是什麼? 我怎樣才能讓apache設置靜態圖形文件的內容長度? – ohp 2010-08-07 12:09:25

相關問題