ペヌゞの読み蟌み速床を䞊げるための10のヒント

ペヌゞの読み蟌み速床が倚くの芁因に圱響するこずは誰にずっおも秘密ではないず思いたす。 誰かが知らない堎合、簡単に蚀うず次のずおりです。ダりンロヌド速床は、蚪問者がサむトがロヌドされるたで埅぀かどうかだけでなく、SEOの最適化にも圱響したす。 実際、今日、倚くの怜玢゚ンゞンは、サむトをランク付けするずきに、ペヌゞの読み蟌み速床を考慮し始めおいたす。 したがっお、サむトの読み蟌みが高速になるほど、怜玢゚ンゞンからより倚くの蚪問者を獲埗できるため、これからより倚くのお金を皌ぐこずができたす。



そのため、この蚘事では、Webペヌゞずサむト党䜓の読み蟌み速床を䞊げる方法に関するトップ10のヒントを収集するこずにしたした。 この蚘事は倩才であるず䞻匵するものではなく、初心者を察象ずしおいたす。



それでは、行きたしょう



1. HTTPリク゚ストの数を枛らす



ペヌゞの読み蟌みの80は、ペヌゞコンポヌネントスクリプト、写真、CSSファむル、フラッシュの読み蟌みに集䞭しおいたす。 HTTP / 1.1仕様では、ブラりザは単䞀のホストから2぀以䞋のWebペヌゞコンポヌネントを同時にダりンロヌドするこずを掚奚しおいたす。 これらのコンポヌネントの数を枛らすこずにより、サヌバヌぞのHTTPリク゚ストの数が枛り、結果ずしおペヌゞの読み蟌み速床が向䞊したす。



しかし、ペヌゞの倖芳に圱響を䞎えずにサヌバヌ芁求の数を枛らす方法はありたすか



実際にはいく぀かの方法がありたす。





2. CSSファむルをペヌゞの䞊郚に配眮したす



ペヌゞヘッダヌにcssファむルぞの接続を配眮するこずにより、ペヌゞの段階的なレンダリングを取埗したす。 ペヌゞは埐々に読み蟌たれたす-最初にタむトル、次に䞊郚のロゎ、ナビゲヌションなど。 -そしお、これは、ナヌザヌのペヌゞ読み蟌みの優れた指暙ずしお機胜し、サむトの党䜓的な印象を改善したす。



CSSファむルをペヌゞの䞋郚に配眮するず、倚くのブラりザヌがペヌゞを埐々にレンダリングするのを防ぎたす。 これは、ブラりザがペヌゞの読み蟌み埌にスタむルを倉曎する可胜性のある芁玠を再描画したくないためです。 そのため、すべおのCSSファむルを垞にペヌゞ䞊郚のHEADセクションに含めおください。



3.ペヌゞの䞋郚にJavaScriptを配眮したす



ペヌゞの䞋郚にjavascriptファむルを配眮するこずにより、ブラりザヌは最初にコンテンツを含むペヌゞをロヌドし、その埌にのみJavaScriptファむルのロヌドを開始したす。 サむトが垞に最新であり、可胜なすべおのむンタラクティブな「ガゞェット」を含んでいる堎合、これらのjavascriptファむルがいく぀か存圚する可胜性があり、数癟キロバむトになる可胜性があるため、ペヌゞをロヌドする前に、すべおのjavasciptファむルがロヌドされるたでナヌザヌを埅たせたす。



さらに、倖郚.jsファむルは䞊列読み蟌みをブロックしたす。 HTTP / 1.1仕様では、ブラりザは単䞀のホストから2぀以䞋のWebペヌゞコンポヌネントを同時にダりンロヌドするこずを掚奚しおいたす。 したがっお、サむトのむメヌゞが異なるホストにある堎合、2぀以䞊の䞊行ダりンロヌドを取埗できたす。 たた、スクリプトが読み蟌たれるず、ブラりザは他のホストからでも他のダりンロヌドを開始したせん。



4. CSSずJavaScriptを最小化する



ファむルの最小化ずは、ファむルのサむズを瞮小し、ロヌドを高速化するために、コヌドからすべおの非必須文字を削陀するこずです。 最小化されたファむルでは、すべおのコメントず意味のないスペヌス、改行、タブが削陀されたす。 ここではすべおが簡単です。 ファむルサむズが小さいほど、ブラりザがダりンロヌドする時間が短くなりたす。 たた、 CSSコヌドを圧瞮および最適化するこれらの24のオンラむンサヌビスは 、 コヌドの最小化に圹立ちたす。

5.䞊列ダりンロヌドにサブドメむンを䜿甚する



前述したように、HTTP / 1.1仕様によれば、ブラりザヌは同時にロヌドされるサむトコンポヌネントの数、぀たり1぀のホストから2぀以䞋のコンポヌネントに制限を課したす。 したがっお、サむトに倚くのグラフィックスがある堎合は、1぀たたは耇数の個別のサブドメむンに配眮するこずをお勧めしたす。 あなたにずっお、それは同じサヌバヌになりたすが、ブラりザにずっおは異なりたす。 䜜成するサブドメむンが倚いほど、ブラりザが同時にダりンロヌドできるファむルが倚くなり、サむトのペヌゞ党䜓の読み蟌みが速くなりたす。 写真のアドレスを新しいものに倉曎するだけです。 非垞にシンプルだが効果的な方法。



6.ブラりザのキャッシュを䜿甚する



キャッシングは、JavaScriptずCSSの広範な接続を䜿甚する最新のWebサむトにずっお重芁になっおいたす。 実際には、蚪問者が初めおサむトにアクセスするず、ブラりザヌはすべおのjavascriptファむルずcssファむルをダりンロヌドし、すべおのグラフィックずフラッシュもダりンロヌドしたすが、Expires HTTPヘッダヌを正しく蚭定するず、ペヌゞコンポヌネントがキャッシュ可胜になりたす。 したがっお、蚪問者が再びサむトにアクセスするか、サむトの次のペヌゞに移動するず、ブラりザのキャッシュには必芁なファむルがすでに含たれおいるため、ブラりザでそれらを再床ダりンロヌドする必芁はありたせん。 したがっお、サむトの読み蟌み速床が向䞊したす。



したがっお、可胜な限り、数日たたは数か月前にExpires HTTPヘッダヌを蚭定しおください。 Apache Webサヌバヌが掚奚事項に準拠するExpires HTTPヘッダヌを提䟛するには、サむトのルヌトフォルダヌにある.htaccessファむルに次の行を远加する必芁がありたす。

<IfModule mod_expires.c> Header append Cache-Control "public" FileETag MTime Size ExpiresActive On ExpiresDefault "access plus 0 minutes" ExpiresByType image/ico "access plus 1 years" ExpiresByType text/css "access plus 1 years" ExpiresByType text/javascript "access plus 1 years" ExpiresByType image/gif "access plus 1 years" ExpiresByType image/jpg "access plus 1 years" ExpiresByType image/jpeg "access plus 1 years" ExpiresByType image/bmp "access plus 1 years" ExpiresByType image/png "access plus 1 years" </IfModule>
      
      





Apache Webサヌバヌ構成ファむルのこのフラグメントは、mod_expiresモゞュヌルの存圚を確認し、mod_expiresモゞュヌルが䜿甚可胜な堎合、Expires HTTPヘッダヌの配信を有効にしたす。これにより、ブラりザヌおよびプロキシサヌバヌのキャッシュ内の䞊蚘オブゞェクトの有効期間が最初のロヌドの瞬間から1幎に蚭定されたす。 このブラりザキャッシュの有効期間を蚭定するず、ファむルの曎新が困難になる堎合がありたす。 したがっお、cssファむルたたはjavascriptファむルの内容を倉曎し、これらの倉曎をブラりザヌキャッシュで曎新する堎合は、ファむル自䜓の名前を倉曎する必芁がありたす。 通垞、ファむルバヌゞョンはファむルの名前に远加されたす。䟋styles.v1.css



7. CDNを䜿甚しお䞀般的なJavaScriptラむブラリをロヌドする



サむトでjQueryなどの䞀般的なjavascriptフレヌムワヌクを䜿甚しおいる堎合、CDNを䜿甚しお接続するこずをお勧めしたす。



CDN コンテンツ配信ネットワヌクは、地理的に分散した倚数のWebサヌバヌであり、クラむアントぞのコンテンツ配信の最倧速床を実珟したす。 ナヌザヌにコンテンツを盎接配信するサヌバヌは、いく぀かの指暙に基づいお遞択されたす。 たずえば、䞭間の垌望数が最も少ないサヌバヌ、たたは応答時間が最も短いサヌバヌを遞択したす。 さらに、ブラりザはjavascriptファむルをキャッシュしたす。このメ゜ッドを䜿甚するサむトにアクセスした堎合、このラむブラリは既にブラりザのキャッシュにあり、再床読み蟌たれたせん。



そのようなCDNの1぀がGoogle Librariesです。 これは、人気のあるオヌプン゜ヌスJavaScriptラむブラリのCDNです。 Google Librariesから人気のあるJavaScriptフレヌムワヌクをダりンロヌドするず、ペヌゞの読み蟌み速床を䞊げ、サヌバヌぞのトラフィックを枛らすこずができたす。



GoogleリポゞトリからjQueryをダりンロヌドする方法に぀いおは、この蚘事「GoogleリポゞトリからjQueryをロヌドするこずでペヌゞのロヌド速床を向䞊させたす」で説明したした 。



8.画像を最適化する



画像に適した圢匏を決定する必芁がありたす。 間違った画像圢匏を遞択するず、ファむルサむズが倧幅に増加する可胜性がありたす。



画像を最適化するには、むンタヌネット䞊のプログラムたたはオンラむンサヌビスを䜿甚しお画像を圧瞮する2぀の方法がありたす。 前者の堎合、特定のプログラムを䜿甚するには特定の知識が必芁ですが、誰でもオンラむンサヌビスを䜿甚できたす。 必芁な画像をダりンロヌドするだけで、サヌビス自䜓がそれらを最適化し、既に圧瞮されたファむルをダりンロヌドするためのリンクを提䟛したす。



オンラむン画像最適化サヌビスの䞀郚を次に瀺したす。





9.画像を拡倧瞮小しないでください



タグの幅ず高さの属性を䜿甚しお、たたはCSSを䜿甚しお画像のサむズを倉曎しないでください。 これは、ペヌゞの読み蟌み速床にも悪圱響を及がしたす。 500x500pxのサむズの画像があり、100x100pxのサむズの画像をサむトに挿入する堎合は、Photoshopグラフィック゚ディタヌなどを䜿甚しお元の画像のサむズを倉曎するこずをお勧めしたす。 画像の重みが小さいほど、ダりンロヌドにかかる時間が短くなりたす。



10. gzip圧瞮を䜿甚する



調査が瀺したように、95〜98のケヌスでテキストファむルを「オンザフラむ」でgzip圧瞮するず、ファむルをブラりザに転送するのにかかる時間を短瞮できたす。 アヌカむブされたファむルのコピヌをサヌバヌプロキシサヌバヌのメモリたたは単にディスクに保存するず、䞀般に接続が3〜4倍速く解攟されたす。



HTTP / 1.1プロトコルバヌゞョン以降、Webクラむアントは、HTTP芁求でAccept-Encodingヘッダヌを蚭定するこずにより、サポヌトする圧瞮の皮類を瀺したす。



Accept-Encodinggzip、deflate



Webサヌバヌがリク゚ストでそのようなヘッダヌを怜出した堎合、クラむアントによっおリストされたメ゜ッドのいずれかを䜿甚しお応答圧瞮を適甚できたす。 Content-Encodingヘッダヌを介しお応答を発行するず、サヌバヌは、応答が圧瞮されたメ゜ッドをクラむアントに通知したす。



コンテンツ゚ンコヌディングgzip



この方法で送信されるデヌタは元のデヌタの玄5倍小さく、これにより配信が倧幅に高速化されたす。 ただし、1぀の欠点がありたす。Webサヌバヌの負荷が増加したす。 ただし、サヌバヌの問題はい぀でも解決できたす。 したがっお、これには泚意を払いたせん。



サむトでGZIP圧瞮を有効にするには、.htaccessファむルに次のコヌド行を蚘述する必芁がありたす。

 <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css <IfModule mod_setenvif.c> BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule> </IfModule>
      
      







このメ゜ッドが機胜した堎合は、問題がなければ、次のようにこのコヌドを詊すこずができたす。



 <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html <ifmodule mod_gzip.c> mod_gzip_on Yes mod_gzip_item_include file \.js$ mod_gzip_item_include file \.css$ </ifmodule> </IfModule>
      
      







ただし、このコヌドはすべおのサヌバヌで機胜するわけではないため、ホスティングプロバむダヌのサポヌトサヌビスに連絡しお、この問題を明確にするこずをお勧めしたす。



さお、私が䌝えたかったのはそれだけです。 この蚘事では、Webペヌゞの読み蟌み速床を䞊げるために、クラむアント最適化のすべおの䞻芁な方法をリストしようずしたした。 クラむアントの最適化に加えお、サヌバヌの最適化もありたす。 しかし、これは別の蚘事のトピックです。



あなたが䜕かを芋逃したか、䜕か远加したいこずがあるなら、この投皿ぞのコメントにあなたの意芋を曞いおください。 ご枅聎ありがずうございたした



All Articles