網站訪問優化(二):開啟apache伺服器gzip壓縮
昨天,把頻寬從1M升級到2M,使用cdn版本的jquery之後,網站訪問速度由平均5s(在禁止快取的情況下,使用快取大概在2.8s)下降到2.8s的樣子。
今天,繼續優化。
第1步:
把圖片進行了壓縮,70kb以上的banner用的大圖,壓縮成50kb左右。圖片質量稍微下降了一點,沒錢連高清圖片都用不起,所以還是得有錢,賺錢。
第2步:
js壓縮。
昨天,也用了網上下載的js/css壓縮器,部署時,用壓縮版本的。速度並沒有明顯的提升,可能是因為js和css很少,而且都比較小的緣故。
晚上,用百度站長檢測了下網站訪問,平均3s多,比我本地(湖北-武漢-20MB頻寬)2.8s要慢了0.7s的樣子。
其中一項診斷建議是,使用gzip壓縮。
於是,今天就重點嘗試了Apache開啟gzip壓縮。
第1步:找到並開啟apache/conf目錄中的httpd.conf檔案
第2步:httpd.conf中開啟deflate_Module和headers_Module模組,具體做法為將 如下兩句前面的#去掉:
4個疑問:
1.Apache開啟gzip壓縮,和手動壓縮JS/CSS區別多大呢?
效果上,當然是gzip效果好。
2.Apache版本問題。
本地Apache是2.4.9的,線上Apache是2.2的。
本地最初一直報錯,網上搜了下“
Apache AddOutputFilterByType is deprecated. How to rewrite using mod_filter?
http://stackoverflow.com/questions/5230202/apache-addoutputfilterbytype-is-deprecated-how-to-rewrite-using-mod-filter
本地2.4的Apache沒有成功。
3.在.htaccess中,配置gzip壓縮,一直沒有成功。
4.統計程式piwik.js對響應時間有一定的影響。
piwik偶爾不夠穩定,尤其是在頻寬為1M的時候。
----------------------------------
開啟,GZIP壓縮之後,首頁平均訪問時間下降到1.8s。
1.82s(load:1.28,DOMContentLoaded:397ms)
啟用快取的情況下,第2次訪問:
1.00s(load:469ms,DOMContentLoaded:352ms)
----------------------------------
頻寬升級到3M,平均訪問速度:http://
禁用瀏覽器快取:1.69s(load:1.16s,DOMContentLoaded:415ms)
啟動瀏覽器快取:1.18s(load:640ms,DOMContentLoaded:349ms)
----------------------------------
ThinkPHP快取:如果為debug模式,大概會多花1s左右。
----------------------------------
總結:在把頻寬從1M升級到3M,圖片用Fireworks壓縮,開啟Apache的Gzip壓縮,使用cdn版本的jquery之後,
平均訪問速度從5s到1.5s。
當然,Thinkphp使用快取,瀏覽器不禁用快取的情況下。
2s之內能開啟,大家可以接受吧。
----------------------------------
參考資料:
http://jingyan.baidu.com/article/db55b609a7bc234ba20a2f7e.html
http://stackoverflow.com/questions/5230202/apache-addoutputfilterbytype-is-deprecated-how-to-rewrite-using-mod-filter
今天,繼續優化。
第1步:
把圖片進行了壓縮,70kb以上的banner用的大圖,壓縮成50kb左右。圖片質量稍微下降了一點,沒錢連高清圖片都用不起,所以還是得有錢,賺錢。
第2步:
js壓縮。
昨天,也用了網上下載的js/css壓縮器,部署時,用壓縮版本的。速度並沒有明顯的提升,可能是因為js和css很少,而且都比較小的緣故。
晚上,用百度站長檢測了下網站訪問,平均3s多,比我本地(湖北-武漢-20MB頻寬)2.8s要慢了0.7s的樣子。
其中一項診斷建議是,使用gzip壓縮。
於是,今天就重點嘗試了Apache開啟gzip壓縮。
第1步:找到並開啟apache/conf目錄中的httpd.conf檔案
第2步:httpd.conf中開啟deflate_Module和headers_Module模組,具體做法為將 如下兩句前面的#去掉:
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
第3步: 在httpd.conf檔案底部加入如下程式碼配置需要壓縮的檔案:<IfModule deflate_module>
SetOutputFilter DEFLATE
# Don’t compress images and other
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
第4步:重啟apache服務端
最好先檢測下語法,是否正確。
/etc/init.d/httpd -t
/etc/init.d/httpd restart
第5步:使用工具重新檢測是否開啟gzip壓縮。考慮到相關廣告檢測機制具體的gzip檢測工具訪問地址可以到搜尋引擎中去查詢。
http://tool.chinaz.com/Gzips/
輸入你的域名。
另外,也可以使用Chrome檢視。
- Content-Encoding:gzip
- 啟動GZIP壓縮後,Response Headers,會有上面一行顯示。
4個疑問:
1.Apache開啟gzip壓縮,和手動壓縮JS/CSS區別多大呢?
效果上,當然是gzip效果好。
2.Apache版本問題。
本地Apache是2.4.9的,線上Apache是2.2的。
本地最初一直報錯,網上搜了下“
AddOutputFilterByType
”Apache AddOutputFilterByType is deprecated. How to rewrite using mod_filter?
網上有說法是,2.4不再支援,但是後來,2.2版本卻又成功了。
2.4版本的 AddOutputFilterByType 配置,參考的是下面的:
http://stackoverflow.com/questions/5230202/apache-addoutputfilterbytype-is-deprecated-how-to-rewrite-using-mod-filter本地2.4的Apache沒有成功。
3.在.htaccess中,配置gzip壓縮,一直沒有成功。
4.統計程式piwik.js對響應時間有一定的影響。
piwik偶爾不夠穩定,尤其是在頻寬為1M的時候。
----------------------------------
開啟,GZIP壓縮之後,首頁平均訪問時間下降到1.8s。
1.82s(load:1.28,DOMContentLoaded:397ms)
啟用快取的情況下,第2次訪問:
1.00s(load:469ms,DOMContentLoaded:352ms)
----------------------------------
頻寬升級到3M,平均訪問速度:http://
禁用瀏覽器快取:1.69s(load:1.16s,DOMContentLoaded:415ms)
啟動瀏覽器快取:1.18s(load:640ms,DOMContentLoaded:349ms)
----------------------------------
ThinkPHP快取:如果為debug模式,大概會多花1s左右。
----------------------------------
總結:在把頻寬從1M升級到3M,圖片用Fireworks壓縮,開啟Apache的Gzip壓縮,使用cdn版本的jquery之後,
平均訪問速度從5s到1.5s。
當然,Thinkphp使用快取,瀏覽器不禁用快取的情況下。
2s之內能開啟,大家可以接受吧。
----------------------------------
參考資料:
http://jingyan.baidu.com/article/db55b609a7bc234ba20a2f7e.html
http://stackoverflow.com/questions/5230202/apache-addoutputfilterbytype-is-deprecated-how-to-rewrite-using-mod-filter
相關文章
- Apache開啟gzip壓縮提高網站速度Apache網站
- Apache 開啟gzip壓縮Apache
- Apache開啟GZIP壓縮功能方法Apache
- VuePress 部落格優化之開啟 Gzip 壓縮Vue優化
- 伺服器端如何開啟GZIP壓縮功能伺服器
- Vue開啟gzip壓縮檔案Vue
- nginx指定埠開啟gzip壓縮Nginx
- 使用filter實現網站的gzip壓縮Filter網站
- Node.js伺服器啟用Gzip壓縮Node.js伺服器
- 給Tomcat,Apache配置gzip壓縮(HTTP壓縮)功能 (轉)TomcatApacheHTTP
- nginx快取配置及開啟gzip壓縮Nginx快取
- 前端效能優化gzip初探(補充gzip壓縮使用演算法brotli壓縮的相關介紹)前端優化演算法
- 將 Vue.js 專案部署至靜態網站託管,並開啟 Gzip 壓縮Vue.js網站
- Nginx開啟gzip壓縮大幅提高頁面載入速度Nginx
- 專案效能優化之用compression-webpack-plugin外掛開啟gzip壓縮,以vue為例優化WebPluginVue
- 如何透過ZBlogPHP啟用Gzip壓縮?PHP
- 網站訪問優化,未完待續網站優化
- 啟用 Redis 快取優化您的網站訪問速度Redis快取優化網站
- 使用gzip壓縮檔案
- 網站優化(一)——從何處著手開啟網站優化?網站優化
- 「簡明效能優化」雙端開啟Gzip優化
- 【Go】使用壓縮檔案優化io (二)Go優化
- 關於Java的GZIP壓縮與.net C#的GZIP壓縮的差異JavaC#
- vue-cli 啟動gzip壓縮,及後臺配置Vue
- 提高網站訪問效能之Tomcat優化網站Tomcat優化
- 啟用 Brotli 壓縮演算法,對比 Gzip 壓縮 CDN 流量再減少 20%演算法
- Nginx效能優化功能- Gzip壓縮(大幅度提高頁面載入速度)Nginx優化
- 「簡明效能優化」雙端開啟Gzip指南優化
- 網站一開啟網站訪問硬碟讀取就變慢網站硬碟
- PHP伺服器訪問優化PHP伺服器優化
- 檢視網頁是否壓縮gzip+編碼方式網頁
- android解壓縮GZIP格式的網頁資料Android網頁
- vue-cli3.0配置GZIP壓縮Vue
- 高效能 gzip 壓縮工具 pgzip
- 提升網站訪問速度的 SQL 查詢優化技巧網站SQL優化
- apache下開啟ssl訪問,即httpsApacheHTTP
- 關gzip壓縮,我有新發現
- Android總結之Gzip/Zip壓縮Android