ホームページの表示を高速化する

Frameworkを使ったホームページは、Frameworkを使わない場合と比べて内部に多くのロジックを溜め込むことになるのでどうしてもサイトの表示スピードが遅くなりがちです。
Live CommerceではZend Frameworkの速度低下の弊害を最小化するためにサイトの最適化をいくつか行っています。 ここでは最適化に関するカスタマイズできる個所を紹介します。

.htaccess mod_expiresの設定

public_htmlフォルダ直下には.htaccessがあります。.htacessファイルのmod_expiresに関するカスタマイズできる個所をコメントしています。 mod_expiresはApacheのモジュールとしてインストールされます。mod_expiresがインストールされていなくても、システムの動作とは直接関係ありませんが、ブラウザにキャッシュさせる有効期限をコントロールできるため、mod_expiresを指定すれば、同一のURLを表示させる時に2回目以降の表示が早くなります。
mod_expiresがインストールされているかどうかを確認するには、サーバ管理者に次のメールを送るか、
サーバ管理担当者様
お世話になります、_________と申します。
この度、オープンソースで配布されているLive Commerce(http://www.live-commerce.com)を使いたいと思いますが、
サイトの最適化に関してApacheのモジュールである「mod_expires」を使わせていただきたいのですが、私の契約
しているプランで可能でしょうか?
確認をお願いします。mod_expiresについては下記URLをご覧ください。
http://httpd.apache.org/docs/2.2/ja/mod/mod_expires.html
もし条件を満たしていない場合、どのようなプランまたは契約内容に変更すれば
利用できますでしょうか。
以上、よろしくお願いいたします

または、あなたがファイルの操作ができるのでしたら、phpinfoを作成して、画面に出力された内容からmod_expiresをテキスト検索してみてください。インストールされている場合は表示されるはずです。mod_expires のインストール方法は現時点ではGoogleに確認してください。後ほど文書には追加予定です。

注意).htaccessファイルはWindowsに付属されているテキストエディタでは通常は開けません。ここではterapadというテキストエディタを使ってファイルを開いています。terapadは無料のテキストエディタで、インストール後、.htaccessファイルをデスクトップに表示されているアイコンの上にドラッグ&ドロップすると、.htaccesssファイルが開けます。
念のため、.htaccessのファイルの改行コードはLFです。Windowsにある標準のテキストエディタを使った場合、改行コードがCRLFになり、データが破損する可能性があるため専用のエディタを使ってください。

.htaccessをオープンし以下の行を探してください。Apacheにモジュールとして組み込みされているmod_expiresの設定を行っています。 mod_expires は文書のキャッシュの有効期限を指定することができます。指定した時刻に到達するまでは、オリジナルファイルではなく、キャッシュされているデータを読みにいきます。

 

.htaccess mod_deflate

Apacheのモジュール mod_deflateでブラウザに出力する前にテキストデータを圧縮します。 mod_deflate モジュールはコンテンツのデータをクライアントに出力する前にサーバ側で圧縮します。メリットとして転送量の低減、表示速度の高速化を行えます。詳しい設定方法についてはApacheモジュールのmod_deflateを参照してください。
この部分をカスタマイズする方はサーバエンジニアか、経験のあるプログラマだけが行うようにしてください。 システムのことが分からずに編集した場合、予期せぬエラーが発生する場合があります。
圧縮させるコンテントタイプをいろいろと指定することができます。

 

HTMLソースレベルでの最適化

米Yahoo担当者が発表している「ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール」にてフロントエンドのHTMLソースコードでチューニングできるカスタマイズ方法が紹介されています。是非トライしてみてください。

キャッシュ

キャッシュとは、利用頻度の高いデータやファイルをあらかじめ特定のフォルダなどに格納しておき、リクエストがあった時に、データベースなどにリクエストしなくてもあらかじめ用意してあるデータを出力することで、無駄を省き高速にデータにアクセスできるようにしていることです。
Live Commerceではキャッシュを利用してさまざなま動的ページを静的ファイルに置き換えてコンテンツを出力しています。キャッシュされたファイルは cache ディレクトリに保存されています。
キャッシュにはデータを保持しておく有効期限があらかじめ決められています。有効期限の設定についてはキャッシュ管理を参照してください。