2016-10-03 5 views
6

NGINX를 사용하여 GZIP 및 Brotli 압축을 활성화하려고합니다. 내 nginx.conf에과 같이 MIME 타입의 자신의 목록과 각을 제공해야 :NGINX에서 GZIP 및 BROTLI를 사용하여 MIME 유형 목록 공유

gzip_types text/plain 
      text/css 
      ...etc; 

brotli_types text/plain 
      text/css 
      ...etc; 

가 어떻게 두 설정에서 사용할 수있는 MIME 유형의 단일 목록을 만들 수 있습니까? 절대적으로 중앙 위치에서 목록을 관리 할 필요하다면

답변

0

그것은 압축 혜택을 누릴 수있는 MIME 유형의 수 있기 때문에 동기화 두 목록을 설정하는 거의 일회성 작업은 약 20

수레한다 , Nginx 구성을 서버에 밀어 넣을 수있는 가능성있는 플레이 북을 개발하는 것이 좋습니다. 해당 구성을 밀어 관련된 Ansible 각본의

부분은 다음과 같을 것이다 :

- name: "Set fact for compressible MIME types" 
    set_fact: 
    compressibles: 
     - "text/css" 
     - "application/javascript" 
     - "..." 

- name: "copy {{ item }} conf.d config file" 
    template: 
    src: "{{ item }}.conf.j2" 
    dest: "/etc/nginx/conf.d/{{ item }}.conf" 
    with_items: 
    - brotli 
    - gzip 
    notify: reload nginx 

gzip.conf.j2 :

gzip on; 

gzip_types {{ compressibles|join(' ') }}; 

# whatever else you think is relevant for gzip configuration 
# ... 

brotli.conf.j2

brotli on; 

brotli_types {{ compressibles|join(' ') }}; 

# whatever else you think is relevant for brotli configuration 
# ...