ホームページ  >  記事  >  php教程  >  Apache が mod_expires モジュールを有効にする

Apache が mod_expires モジュールを有効にする

黄舟
黄舟オリジナル
2016-12-21 11:36:131210ブラウズ

mod_expires により、繰り返しのリクエストが約 10% 削減され、繰り返しのユーザーがサーバーにリクエストをまったく行わずに、指定されたページリクエストの結果をローカルにキャッシュできるようになります。

使用する前に、まず「mod_expires」モジュールが有効になっているかどうかを確認してください。Apache を自分でインストールして Web ホストを設定する場合は、Apache の「httpd.conf」設定ファイルを編集することで処理できます。次のような行があるかもしれません:

#LoadModuleexpires_module modules/mod_expires.so

コードをコピーします

行の前の「#」文字を削除し、「httpd.conf」構成ファイルを保存して再起動しますこの更新を有効にするために Apache を起動します

もちろん、仮想ホストをレンタルしている場合、「httpd.conf」設定ファイルは一般ユーザーにはアクセスできないため、ルート ディレクトリに「.htaccess」設定を書き込みます。ウェブサイトファイルの「mod_expires」設定データは、Apacheの「httpd.conf」設定ファイルに書き込む以外に、「.htaccess」設定ファイルにも書き込むことができるので、比較的柔軟に利用できると思います。ブラウザを使用して Web ページを閲覧すると、ブラウザは Web ページ データをキャッシュしてローカル マシンに保存し、次回同じ Web ページを閲覧するときに Web サイトからデータを再度ダウンロードすることなく高速化することがわかっています。これにより、プロセスが高速化されます。ここでのいわゆる「高速化」は、実際には「mod_expires」関数を使用して Web ページのファイルの有効期限を設定し、その Web ページの時間を延長します。このように、Web ページのファイルの有効期限が切れていない限り、ブラウザは Web サイト上のデータのダウンロードに時間を費やすことなく、キャッシュされたデータを参照します。一方、ウェブマスターにとっての利点は、ウェブサイトのトラフィック消費量を削減できることです (たとえば、一部の仮想ホストはウェブサイトが使用できるトラフィックを制限します)

例から直接学びましょう。例 1:


ExpiresActive On

ExpiresDefault "アクセス + 10 日"

ExpiresByType text/css "アクセス + 1 秒"

コードをコピー

例 2:

ExpiresActive On

ExpiresDefault A86400

ExpiresByType image/x-icon A2592000

ExpiresByType application/x-javascript A2592000

ExpiresByType text/css A2592000

ExpiresByType image/ gif A604800

ExpiresByType image/png A604800

ExpiresByType image/jpeg A604800

ExpiresByType text/plain A604800

ExpiresByType application/x-shockwave-flash A604800

ExpiresByタイプ video/x-flv A604800

ExpiresByType application/pdf A604800

Expi resByType text/html A900

コードをコピー

例 3:

ExpiresActive On

ExpiresDefault A0

#1年

< FilesMatch “.(flv|ico|pdf|avi|mov|ppt| doc|mp3|wmv|wav)$”>

ExpiresDefault A9030400

# 1 週間

ExpiresDefault A604800

# 3 時間

ExpiresDefault A10800''

コードをコピー

を使用して命令をラップすると、mod_exp の実行時に命令を実行する必要がなくなります。アイレスモジュールmod_expires モジュールが有効であると判断された場合は、 を記述しなくても問題ありません。

ExpiresActive On は mod_expires 関数を有効にすることを意味し、Off は mod_expires 関数を有効にすることを意味します。機能をオフにするには、

ExpiresDefault コマンドでデフォルトの有効期限を設定します。

例 1 と例 2 から、時間を設定するには 2 つの方法があることがわかります。1 つはテキスト記述タイプで、もう 1 つはコードです。プラス秒タイプ

テキスト記述タイプ:

「アクセス プラス 10 日」は閲覧時間を意味します。 Apache の公式ドキュメントによると、有効期限の開始時間は、アクセス、現在、変更の 3 つです。変更は Web ページファイルの「最終編集時刻」を指します。そのため、最終編集時刻から計算されたファイルを使用したい場合は、「変更プラス 10 日」のように記述できます。時間の指定も非常に簡単で、英単語(年、月、週、日、時、分、秒)で、たとえば、「アクセス プラス 1 か月 15 日 2 時間」のように記述できます。

コードと秒のタイプ:
A86400 は、閲覧時から 1 日を意味します。形式はコードと秒の 2 種類あり、「A」は「アクセス」に相当し、有効期限は次から計算されます。コード「A」は、画像など頻繁に変更されない Web ファイルの種類に適しています。もう 1 つのコードは、「変更」と同じ意味です。 Web ページ ファイルの「最終編集時刻」コード「M」の使用は、コンテンツを頻繁に更新する HTML ページなど、頻繁に変更される Web ページ ファイル タイプのアプリケーションに適しています。秒情報の記事です。

ExpiresByType コマンドは、さまざまな Web ページ ファイルの種類に応じて有効期限を設定します。
たとえば、ExpiresByType text/css A2592000 は、Web サイト上の CSS スタイル ファイルの有効期限が 3 日であることを意味します。 Web サイト上のファイルは 3 日で期限切れになります。

例 3 では、「ExpiresByType」コマンドを使用する代わりに、 が使用されます。これも使用法です


Apacheモジュールmod_expiresとmod_headersを使用してファイルキャッシュを実装し、Expiresヘッダーを追加します|ファイルヘッダーにExpiresを指定します

Apacheモジュールmod_expiresとmod_headersを使用してファイルを実装します。キャッシュ、Expires ヘッダーの追加|ファイル ヘッダーに Expires を指定します

YSlow の Web サイト速度最適化を使用しているとき、Add an Expires ヘッダーのスコアが非常に低いことがよくあり、よく検索しますが、何を意味するのかわかりません。すること。これが答えです。

Expires ヘッダーを追加 / ファイルヘッダーに Expires を指定
静的ファイルに有効期限マークを追加します。ブラウザーまたは CDN サーバーにそれをキャッシュさせて、画像やその他の静的ファイルの読み込みを高速化します。
Expires はブラウザーのキャッシュ メカニズムの一部です。ブラウザーのキャッシュは、ヘッダーの 4 つの値 (Cache-Control、Expires、Last-Modified、ETag) に依存します。
このオプションを最適化するには、サイト内のすべてのファイルに Cache-Control と Expires を設定するだけです。

有効期限フラグを追加するには、Apache モジュール mod_expires と mod_headers を使用できます。

.htaccessファイルを設定することで、ファイルカテゴリごとにキャッシュ時間を簡単に設定できます。ウェブサイトの速度を向上させるのに役立ちます。

1. mod_expires
を使用して、.htaccess に次のステートメントを追加します:

expiresactive on

#すべてのファイルのデフォルトのキャッシュ時間は 300 秒に設定されます
expiresdefault a300

#html,プレーンテキストキャッシュ 300 秒
expiresbytype text/html a300
expiresbytype text/plain a300

#css、JavaScript キャッシュ 1 時間
expiresbytype text/css a3600
expiresbytype application/x-javascript a3600

#icon ファイルキャッシュ 30 days
expiresbytype image/x -icon a2592000

#Image クラスは 1 週間キャッシュされます
expiresbytype image/jpeg a604800
expiresbytype image/gif a604800
expiresbytype image/png a604800

#他のファイルは 1 週間キャッシュされます
expirエスビータイプアプリケーション/x-shockwave-flash a6048 00
expiresbytype video /x-flv a604800
expiresbytype application/pdf a604800

しかし、1 つの問題は、一般的に使用されている Apache ホストが mod_expires をサポートしていないことが多いことです。問題はありませんが、mod_headers を使用するには別のモジュールを使用します。

また、次のコンテンツを .htaccess ファイルに追加してキャッシュを実現します:

# htm、html、txt などのファイルは 1 時間キャッシュされます

header set cache-control “max-age=3600″

# css、js、swf ファイルは 1 週間キャッシュされます

header setcache-control "max-age=604800"

# jpg、gif、jpeg、png、ico、flv、pdf およびその他のファイルは 1 年間キャッシュされます

header set Cache-control “max-age=29030400″

以下はサンプルコードです:


Header set Cache-Control “max- age=604800, public”


Header set Cache-Control “max-age=18000, public, must-revalidate”


Header set Cache-Control “max-age=3600, must-revalidate”

上記は内容ですApache による mod_expires モジュールの有効化、その他の関連情報については、PHP 中国語 Web サイト (www.php.cn) に注目してください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。