Yslow的A評級指南

這里測的是V2引擎,V1想拿A幾乎不可能,一個CDN測試的F就可以輕松廢了你的網站。

A評級

現在一個一個分析。

User fewer HTTP Requests:減少HTTP請求

圖片、CSS、JS、flash等這些都需要增加http請求數,減少這些元素的數量能減少響應時間。

把多個JS、CSS盡可能合并壓縮(除了JS庫,那東西用別的網站上的緩存比較靠譜)

小圖片盡可能拼在一起,利用CSS的background定位。

Use a Content Delivery Network 利用CDN技術

蝦米CND技術?自己搜索去吧,反正是空間提供商的事情,和你沒關系的,此項我毫無鴨梨的得了F。

Avoid empty src or href 不存在的空路徑

類似于<img src=”">這樣的鏈接不要出現。

Add an Expires headers 設置緩存控制

在.htaccess文件里面加一段

<IfModule mod_expires.c>

ExpiresActive On

ExpiresDefault “access plus 7 days”

ExpiresByType image/x-icon “access plus 30 days”

ExpiresByType image/gif “access plus 30 days”

</IfModule>

服務器如果不支持mod_expires就不可以用了。

Compress components with gzip 設置GZIP壓縮

在cPanel的網站優化里面選擇第二項全部壓縮就好了。

Put CSS at top CSS放頭部

正常網頁都應該這樣吧?

Put JavaScript at bottom JS放腳下

反正我是放腳下,如果你的網頁不是特別依賴JS的效果,還是把JS放腳下比較好。

Avoid CSS Expressions 避免CSS ?表達式

每個CSS的教科書都會告訴你不要寫Expressions,不解釋了。

我是因為語法高亮插件自帶了Expressions才得B,有時候為了兼容IE6,唉。。

Make Javascript and CSS external 使用外部JavaScript和CSS文件

當然要這么做。

Reduce DNS Lookups 減少DNS查找

減少網站從外部網站調用資源。

Minify Javascript and CSS

JS和CSS最小化,很多工具都可以用來壓縮他們。

Avoid URL redirects 避免重定向

除了避免3XX類型的重定向,還有一個小問題,最好不要寫aa.com/bb這樣的網址,因為會被重定向到aa.com/bb/,雖然Apache可以使用mod_rewrite,但不這么寫是最好的。

Remove duplicate javascript and CSS 刪除重復腳本和CSS

最常見的就是多次加載jquery了,用jsview查看下就一目了然了。

Configure ETags 配置ETags

想知道ETags是什么Google之。

解決辦法是 .htaccess里加入FileETag None之。

Make AJAX cacheable 設置AJAX的緩存

AJAX的信息讀取是異步的,這也表示用戶不一定會等待這異步的響應,為避免重復的AJAX請求,設置緩存是優化性能的一個好方法。

Use GET for AJX requests

AJAX用Get不要用Post,這個AJAX書里面都會介紹的。

Reduce the number of DOM elements 減少DOM元素數量

這個需要xhtml有個好的構架。

Avoid HTTP 404 (Not Found) error 避免出現404錯誤頁面。

404對服務器還是用戶都不好。

Reduce cookie size 減少cookie的大小

cookie控制在4K以內。

Use cookie-free domains 使用域名無關性的Cookie

這里是有關靜態服務器的問題,主要是指一些靜態文件比如說圖片、CSS等等,比如說YAHOO,他的靜態文件都在 yimg.com 上,客戶端請求靜態文件的時候,減少了 Cookie 的反復傳輸對主域名的影響。

又一個F,沒辦法,小網站。

Avoid AlphaImageLoader filter

避免AlphaImageLoader濾鏡的使用。

如果為了實現IE6的PNG透明,忍吧。

Do not scale images in HTML 不要對圖片進行縮放

W3C一直不提倡圖片縮放,一方面是對服務器資源的浪費,另一方面也是對性能的浪費。

不過呢,由于用Windows Live Writer寫博客,插圖片時候默認是縮放的,沒辦法,只能B。

Make favicon small and cacheable 使圖標盡可能小,并使用緩存。

這里指的是favicon.ico了,前面已經設置過了favicon.ico緩存。

轉載于:https://www.cnblogs.com/9lsy/archive/2013/02/27/2935361.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/376846.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/376846.shtml
英文地址,請注明出處:http://en.pswp.cn/news/376846.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

jquery下 選擇器整理

jQuery 的選擇器可謂之強大無比&#xff0c;這里簡單地總結一下常用的元素查找方法 $("#myELement") 選擇id值等于myElement的元素&#xff0c;id值不能重復在文檔中只能有一個id值是myElement所以得到的是唯一的元素 $("div") 選擇所有的di…

git日常使用教程

目錄git日常使用git 基礎用法(本地)git branchgit checkoutgit mergegit rebaseHEAD ,在提交樹上移動相對引用強制修改分支位置撤銷變更整理提交記錄提交技巧Git TagsGit Describegit 基礎用法(遠程)git fetchgit pullgit push偏離的提交歷史&#xff0c;十分重要&#xff01;&…

android一鍵分享功能不使用任何第三方sdk

在android中有自帶的一鍵分享功能&#xff0c;不過它會把所有帶分享的應用都找出來&#xff0c;如果我們只需要一些常見的分享應用&#xff0c;該如何做呢&#xff1f; 下面看我的效果圖&#xff08;橫屏和豎屏自動適配&#xff09;&#xff1a; 接下來看我的調用&#xff08;支…

包含EditText組件的界面中,禁止自動彈出軟鍵盤

解決方法&#xff1a; 1&#xff09;在Manifest.xml文件中相應的activity下添加一下代碼&#xff1a;android:windowSoftInputMode"stateHidden"2&#xff09;讓EditText失去焦點&#xff0c;使用EditText的clearFocus方法 例如&#xff1a;EditText edit(EditText)f…

gcc 編譯器使用指南

目錄安裝準備test.cpp編譯g 編譯參數-g &#xff1a;編譯帶調試信息的可執行文件-O[n] &#xff1a;開啟優化-l 和 -L &#xff1a;指定庫文件 | 指定庫文件路徑-I &#xff1a;指定頭文件搜索目錄-Wall 和 -w&#xff1a;打印警告信息 | 關閉警告信息-stdc11 &#xff1a;設置…

bug found:定義對象時

看下面代碼 class Test{ }; class Test2{public:Test2(Test *t){}};int main(){Test test();//把定義一個對象 “Test test;” 寫成 “Test test();”函數聲明了&#xff01;Test2 test2(&test);//return 0;}Dev-cpp的提示信息&#xff1a; no matching function for c…

CMake學習使用(基于vscode)

目錄語法一些重要指令CMake常用變量CMake編譯工程編譯流程兩種構建方式實例展示參考&#xff1a; 基于VSCode和CMake實現C/C開發 | Linux篇 語法 基本語法格式&#xff1a;指令(arg1 arg2 …) 參數使用括弧括起來參數之間使用空格或者分號分開 指令是大小寫無關的&#xff0…

idhttp.post方式 調用datasnap rest 遠程方法

idhttp.get方式調用&#xff0c;這種比較簡單&#xff0c;大家都會。post方式網上卻沒有任何成功的代碼&#xff0c;本人也是摸索了一個上午才搞定。 分享給大家。 &#xff08;1&#xff09;post方式調用的遠程方法&#xff0c;方法名必須加“update”前綴&#xff0c;不加行不…

[轉]連接excel數據源時,首行包含列名稱選項在連接字符串中的設置。

關于Excel導入的HDRYES; IMEX1詳解 ProviderMicrosoft.Jet.OLEDB.4.0;Data Source111.xls;Extended Properties"Excel 8.0;HDRNO"; 其中HDRNO或YES即首行包含列名稱選項 (參數HDR的值&#xff1a;HDRYes&#xff0c;這代表第一行是標題&#xff0c;不做為數據使用&am…

C++多線程快速入門(一):基本常用操作

目錄case1&#xff1a;創建線程1 join、detachcase2&#xff1a;創建線程2 線程傳參 傳值或者傳引用case3&#xff1a;創建線程 線程傳參 functional object作為參數case4&#xff1a;觀察多線程程序加速計算case5&#xff1a;future get 獲取并發結果case6&#xff1a;互斥鎖…

android:configChanges屬性總結

原文地址&#xff1a;http://blog.csdn.net/zhaokaiqiang1992/article/details/19921703 android中的組件Activity在manifest.xml文件中可以指定參數android&#xff1a;ConfigChanges&#xff0c;用于捕獲手機狀態的改變。 在Activity中添加了android:configChanges屬性&#…

eclipse 中修改 M2_REPO的值

從eclipse中增加了maven2的插件之后&#xff0c;maven默認的本地庫的路徑是${user}/.m2/repository/下&#xff0c;一般windows用戶的操作系統都安裝在C盤&#xff0c;所以這個目錄 下的jar包比較危險。我嘗試從myeclipse->preferences->java->build path->classpa…

C++多線程快速入門(二)共享數據同步以及數據競爭

目錄std::unique_lock類模板僅調用一次線程局部存儲原子變量往期內容回顧std::unique_lock類模板 互斥鎖保證了線程間的同步&#xff0c;卻將并行操作變成了串行操作&#xff0c;對性能有較大影響&#xff0c;所以我們要盡可能減小鎖的區間粒度。 lock_guard只能保證在析構的時…

DNS安全淺議、域名A記錄(ANAME),MX記錄,CNAME記錄

相關學習資料 http://baike.baidu.com/link?url77B3BYIuVsB3MpK1nOQXI-JbS-AP5MvREzSnnedU7F9_G8l_Kvbkt_O2gKqFw7vm http://www.rfc-editor.org/rfc/rfc1035.txt http://www.rfc-editor.org/rfc/rfc3596.txt http://www.rfc-editor.org/rfc/rfc2782.txt http://www.rfc-edito…

ThinkInJava4讀書筆記之第一章對象入門

那句話怎么說來著&#xff0c;原句記不住了好像是出來混的遲早要還的。話說當初學校剛開Java課程&#xff0c;自己沒有好好學啊&#xff0c;后來直接做了jsp和servlet&#xff0c;然后學了SSH框架和Extjs、jQuery&#xff0c;接著是mybatis&#xff08;ibatis&#xff09;、fre…

C++多線程快速入門(三):生產者消費者模型與條件變量使用

互斥鎖完成 #include <iostream> #include <deque> #include <thread> #include <mutex>std::deque<int> q; std::mutex mtx;static void produce(int val) {while(val--) {std::unique_lock<std::mutex> guard(mtx);q.push_front(val);m…

【blade利刃出鞘】一起進入移動端webapp開發吧

前言 在移動浪潮襲來的時候&#xff0c;小釵有幸進入框架組做webapp框架開發&#xff0c;過程中遇到了移動端的各種坑&#xff0c;也產生了各種激情&#xff0c;就我們公司的發展歷程來說 第一階段&#xff1a;使用傳統方式開發移動站點&#xff0c;少量引入HTML5元素 第二階段…

題目理解。。

有時候一道大水題&#xff0c;因為英文描述可能有點復雜或者其它云云&#xff0c; 就比如那道PRO。。 別先被一道題嚇一跳&#xff0c;&#xff0c;&#xff0c; 英文描述看深入一點總歸會能解決的&#xff0c;盡可能多的考慮情況。大膽嘗試。轉載于:https://www.cnblogs.com/c…

C++多線程快速入門(四)shared_mutex以及讀寫鎖應用

在前面的三講中我們使用的mutex都是普通的std::mutex&#xff0c;這里介紹一下shared_mutex&#xff0c;版本為C17 std::shared_mutex的底層實現時操作系統提供的讀寫鎖&#xff0c;在讀多寫少的情況下&#xff0c;該shared_mutex比mutex更加高效。 它提供了常用的四種方法&am…

Tornado/Python 學習筆記(一)

1.源代碼下載及安裝&#xff1a;http://www.tornadoweb.org/en/stable/ 2.python中xmlrpc庫官方文檔&#xff1a;https://docs.python.org/3/library/xmlrpc.html?highlightxmlrpc 3.xml介紹與學習&#xff1a;http://www.w3school.com.cn/xml/xml_intro.asp XML 被設計為傳輸…