facebook twitter hatena line email

「Linux/nginx/パフォーマンス向上」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
 
(同じ利用者による、間の19版が非表示)
行1: 行1:
 
==静的ファイル圧縮==
 
==静的ファイル圧縮==
vi /etc/nginx/conf.d/sample1.localhost.conf
+
圧縮は個別confでなく全体で設定したほうがわかりやすいと思う。
 +
 
 +
vi /etc/nginx/nginx.conf
 
  http {
 
  http {
 
     gzip              on;
 
     gzip              on;
 
     gzip_http_version 1.0;
 
     gzip_http_version 1.0;
 +
    gzip_comp_level  6; #(1-9)
 +
    gzip_proxied      any;
 +
    gzip_vary        on;
 
     gzip_types        text/plain
 
     gzip_types        text/plain
 
                       text/xml
 
                       text/xml
行13: 行18:
 
                       application/javascript
 
                       application/javascript
 
                       application/x-javascript
 
                       application/x-javascript
                       application/x-httpd-php;
+
                       application/x-httpd-php
 +
                      application/json
 +
                      text/javascript;
 
     gzip_disable      "MSIE [1-6]\.";
 
     gzip_disable      "MSIE [1-6]\.";
 
     gzip_disable      "Mozilla/4";
 
     gzip_disable      "Mozilla/4";
    gzip_comp_level  1;
+
     gzip_buffers      16 8k;
     gzip_buffers      4 8k;
+
 
     gzip_min_length  1100;
 
     gzip_min_length  1100;
 
  このさき略
 
  このさき略
 
  }
 
  }
 +
 +
gtmatrixの"Specify a Vary: Accept-Encoding header"対応はgzip_varyを追加すればok
  
 
==ブラウザのキャッシュを活用する方法==
 
==ブラウザのキャッシュを活用する方法==
     location ~ .*\.(jpg|JPG|gif|GIF|png|PNG|swf|SWF|css|CSS|js|JS|inc|INC|ico|ICO) {
+
vi /etc/nginx/conf.d/sample1.localhost.conf
 +
     location ~* \.(txt|xml)$ {
 
         fastcgi_pass_header "X-Accel-Expires";
 
         fastcgi_pass_header "X-Accel-Expires";
         expires 10d;
+
         expires 2d;
 
     }
 
     }
 +
    location ~* \.(jpg|jpeg|gif|png|swf|css|js|inc|ico|pdf|flv|gz|woff)$ {
 +
        fastcgi_pass_header "X-Accel-Expires";
 +
        expires 365d;
 +
    }
 +
    location ~* \.(html|htm)$ {
 +
        fastcgi_pass_header "X-Accel-Expires";
 +
        expires 2h;
 +
    }
 +
 +
==ブラウザのキャッシュを活用する方法(apache連携編)==
 +
    location ~* \.(txt|xml)$ {
 +
        fastcgi_pass_header "X-Accel-Expires";
 +
        expires 2d;
 +
        root    /var/www/zend/sample1/public;
 +
        index  index.html;
 +
    }
 +
    location ~* \.(jpg|jpeg|gif|png|swf|css|js|inc|ico|pdf|flv|gz|woff)$ {
 +
        fastcgi_pass_header "X-Accel-Expires";
 +
        expires 365d;
 +
        root    /var/www/zend/sample1/public;
 +
        index  index.html;
 +
    }
 +
    location ~* \.(html|htm)$ {
 +
        fastcgi_pass_header "X-Accel-Expires";
 +
        expires 2h;
 +
        root    /var/www/zend/sample1/public;
 +
        index  index.html;
 +
    }
 +
 +
公式パラメータ説明
 +
http://nginx.org/en/docs/http/ngx_http_headers_module.html#expires
  
 
==参照==
 
==参照==

2016年7月12日 (火) 16:09時点における最新版

静的ファイル圧縮

圧縮は個別confでなく全体で設定したほうがわかりやすいと思う。

vi /etc/nginx/nginx.conf

http {
   gzip              on;
   gzip_http_version 1.0;
   gzip_comp_level   6; #(1-9)
   gzip_proxied      any;
   gzip_vary         on;
   gzip_types        text/plain
                     text/xml
                     text/css
                     application/xml
                     application/xhtml+xml
                     application/rss+xml
                     application/atom_xml
                     application/javascript
                     application/x-javascript
                     application/x-httpd-php
                     application/json
                     text/javascript;
   gzip_disable      "MSIE [1-6]\.";
   gzip_disable      "Mozilla/4";
   gzip_buffers      16 8k;
   gzip_min_length   1100;
このさき略
}

gtmatrixの"Specify a Vary: Accept-Encoding header"対応はgzip_varyを追加すればok

ブラウザのキャッシュを活用する方法

vi /etc/nginx/conf.d/sample1.localhost.conf

   location ~* \.(txt|xml)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 2d;
   }
   location ~* \.(jpg|jpeg|gif|png|swf|css|js|inc|ico|pdf|flv|gz|woff)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 365d;
   }
   location ~* \.(html|htm)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 2h;
   }

ブラウザのキャッシュを活用する方法(apache連携編)

   location ~* \.(txt|xml)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 2d;
       root    /var/www/zend/sample1/public;
       index   index.html;
   }
   location ~* \.(jpg|jpeg|gif|png|swf|css|js|inc|ico|pdf|flv|gz|woff)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 365d;
       root    /var/www/zend/sample1/public;
       index   index.html;
   }
   location ~* \.(html|htm)$ {
       fastcgi_pass_header "X-Accel-Expires";
       expires 2h;
       root    /var/www/zend/sample1/public;
       index   index.html;
   }

公式パラメータ説明 http://nginx.org/en/docs/http/ngx_http_headers_module.html#expires

参照

http://www.mk-mode.com/octopress/2013/01/18/nginx-gzip-compress/

http://blog.hoerin.com/2014/11/11/nginx%E3%81%A7gzip%E5%9C%A7%E7%B8%AE%E3%82%92%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B/