Nginxピクチャjsファイルキャッシュ構成方法

2062 ワード

画像jsのようなサイトでは、cssは長年更新されていない可能性があります.これにより、キャッシュして関連リクエストを減らすことができます.次にproxyを利用してみましょう.Cacheは、ユーザーのリクエストをローカルのディレクトリにキャッシュし、目的地に達します.
次にgif|jpg|jpeg|png|bmp|swfをキャッシュし、以下のように構成します.
nginx.confプロファイルを開いてhttpレベルで次のコードを追加
proxy_connect_timeout 10;
proxy_read_timeout 180;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_temp_path /tmp/temp_dir;
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=10g;

さらにserverレベルで次のコードlocationを追加して次のコードを追加します.
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires       15d;
}

location ~ .*\.(js|css)?$
{
expires       1d;
}

上のように設定すると多くの人が分からないかもしれませんが、以下は比較的詳細な例を整理します.
  cssのようにjsをキャッシュに入れるならlocation~.*\.(gif|jpg|jpeg|png|bmp|swf)$をlocation~.*\.(gif|jpg|png|css|js)(.*)にすればいいですよ.
#ファイルの接尾辞をキャッシュするには、以下の設定を行います.
location ~ .*\.(gif|jpg|png|css|js)(.*) {
     proxy_pass http://appserver ;
     proxy_redirect off;
     proxy_set_header Host $host;
     proxy_cache cache_one;
     proxy_cache_valid 200 302 24h;
     proxy_cache_valid 301 30d;
     proxy_cache_valid any 5m;
     expires 90d;
}

説明:
1、http設定.
一時ディレクトリproxy_の設定temp_path/tmp/temp_dir; キャッシュディレクトリを2次ディレクトリ、共有メモリ領域サイズ、非アクティブ時間、最大容量に設定します.一時ディレクトリはキャッシュディレクトリと同じパーティションにします.proxy_cache_path/tmp/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=10g;   2、server設定  キャッシュ共有メモリの設定proxy_cache cache_one; httpステータスコードを200302キャッシュ時間、24 hを24時間proxy_に設定cache_valid 200 302 24h; 失効時間を設定し、90 dは90日間expires 90 dである.キャッシュを行わずにバックエンドサーバproxy_に直接移動pass http://127.0.0.1:9000;
もちろんexpiresコマンドを使用してキャッシュを構成することもできます
制御画像などの有効期限は30日で、もちろんこの時間はもっと長く設定できます.具体的には状況によって異なります.
location ~ \.(gif|jpg|jpeg|png|bmp|ico)$ {
expires 30d;
}

マッチング/resource/または/mediatorModule/のすべてのファイルキャッシュを最長時間に設定する
たとえば
location ~ /(resource|mediatorModule)/ {
root    /opt/demo;
expires max;
}