2016-10-03 12 views
6

Tôi muốn bật tính năng nén GZIP và Brotli bằng NGINX. Tôi phải cung cấp mỗi danh sách các loại MIME của riêng mình như vậy trong nginx.conf của tôi:Chia sẻ danh sách loại MIME bằng GZIP và BROTLI trong NGINX

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

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

Làm cách nào để tạo một danh sách duy nhất các loại MIME có thể được sử dụng bởi cả hai cài đặt?

Trả lời

0

Nó được khá nhiều một off nhiệm vụ để thiết lập hai danh sách đồng bộ từ số lượng các loại MIME có thể hưởng lợi từ nén nổi xung quanh 20.

Nếu nó hoàn toàn mong muốn để quản lý danh sách từ một vị trí trung tâm , Tôi sẽ đề nghị xem xét phát triển một Playbook Ansible để đẩy cấu hình Nginx lên máy chủ.

Một phần của playbook Ansible liên quan để đẩy cấu hình tương ứng sẽ trông như thế này:

- 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 
# ... 
Các vấn đề liên quan