1

私はすべてのページにたくさんの画像が入っているウェブサイトを持っています。各画像はPHPによって動的に生成されます(つまり、imgタグのsrc = ""属性は"/image.php?id=4553"のようなものです)。

キャッシュを適切に制御して、同じ画像の読み込みをより高速化し、単一の画像の読み込みにかかる時間が非常に速くなっています。問題は、最初の5〜6枚の画像がページの読み込みと同時に読み込まれ、他の画像は何秒も後に(5〜10〜15秒後に)読み込まれることです。Firebugによると、この問題は、サーバーへの同時接続を制限するためにブラウザーが実行する要求のキューイングが原因であるとのことです。

ページのHTMLを送信するときに「Connection:Keep-Alive」ヘッダーを送信しようとしましたが、それだけでは不十分な場合があります。

何か助けはありますか?

ビューポートに表示されている場合にのみ画像を読み込む遅延読み込みなどのjQueryプラグインがあることは知っています。これは良い「回避策」ですが、このタイプの画像の読み込みを制御する適切な方法があるかどうかを知りたいと思います。

どうもありがとうございます。

4

1 に答える 1

4

Firebugは問題を非常にうまく要約しています。xブラウザは、一度にドメインから大量のリソースのみをロードします。xこれはブラウザによって異なり、ユーザーの設定で変更できますが、通常は約8です。これを克服する唯一の方法は、ブラウザに異なるドメインからリソースをダウンロードさせることです(サブドメインは異なるドメインとしてカウントされます)。これにより、一度に大量のリソースをダウンロードできるようになります。.htaccessとmod_rewriteを使用して、実際には同じドメインからダウンロードされている偽のサブドメインから画像をダウンロードすることにより、ブラウザをだまして別のドメインからダウンロードしていると思わせることで、おそらくこれを達成できます。これにより、割り当てられたリソースよりも多くを一度にダウンロードできるようになります。

于 2012-05-09T13:05:24.783 に答える