Welcome to Centmin Mod Community
Become a Member

WebPerf Brotli compression algorithm coming to Chrome browser soon !

Discussion in 'All Internet & Web Performance News' started by eva2000, Jan 21, 2016.

  1. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    Firefox 44 already has Brotli compression algorithm support. Now Chrome will soon Chrome is about to get a lot faster with new compression algorithm and Centmin Mod 123.09beta01 already has Nginx supporting Brotli via ngx_brotli nginx module :D

    Brotli will be only available on HTTPS protocol and can offer up to 20-40% better compression of static text based site assets (css, js, xml, etc) compared to current browser gzip/deflate compression. Current web browser support for Brotli compression algorithm Can I use... Support tables for HTML5, CSS3, etc

    Note though there's an ngx_pagespeed conflict with ngx_brotli module if using ngx_pagespeed 1.9 branch which is fixed in ngx_pagespeed 1.10 branch. However, ngx_pagespeed 1.10 also has a conflict with Clang compiler and system GCC compiler versions <4.8 (i.e. CentOS 6 uses GCC 4.4.7). This means if Firefox 44 is used over HTTPS with brotli and ngx_pagespeed 1.9 branch enabled, ngx_pagespeed doesn't optimise any of the web page resources so it's served just like non-ngx_pagespeed regular page site assets.

    A test 123.09beta01-gcc branch has a tested workaround that allows CentOS 6 systems switch back from Clang compiler to using devtoolset-3 yum packaged GCC 4.9.1 to compile ngx_pagespeed 1.10 branch against GCC 4.9.1. I just merged 123.09beta01-gcc + 123.09beta01 latest into a new branch 123.09beta01-gcc2 for further tests.

    FYI, this very forum is running 123.09beta01 with Nginx Brotli support enabled over HTTPS for Firefox 44 browsers can see the better compression support. However, my CDN assets via KeyCDN do not support Brotli from KeyCDN servers right now. But KeyCDN has plans for Brotli support on their CDN servers eventually too Brotli Compression - Web Performance - KeyCDN Community :)
     
    Last edited: Jan 21, 2016
  2. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5

    How To Enable Nginx Brotli Support in Centmin Mod LEMP ?



    For Centmin Mod 123.09beta01 users to enable Nginx brotli support you can set in a persistent config option outlined at centminmod.com/upgrade.html#persistent at /etc/centminmod/custom_config.inc and adding to it the below variable and then run centmin.sh menu option 4 to recompile Nginx
    Code:
    NGINX_LIBBROTLI=y
    ngx_brotli module google/ngx_brotli · GitHub implements a better compression method for on the fly and static compressed files than gzip. You can read more info on Brotli at Google Open Source Blog: Introducing Brotli: a new compression algorithm for the internet and Bits Up!: Brotli Content-Encoding for Firefox 44 Brotli content encoding is already supported by Firefox 44 (Nightly) and it's expected to be supported by Chrome soon. ngx_brotli directives are similar to Nginx's gzip directives and are outlined at google/ngx_brotli · GitHub

    examples include

    Code:
    brotli_static on|off|always
    brotli on|off
    brotli_types
    brotli_buffers
    brotli_comp_level
    brotli_min_length
    example for nginx.conf
    Code:
            brotli on;
            brotli_static on;
            brotli_min_length 1400;
            brotli_buffers 32 8k;
            brotli_comp_level 5;
            brotli_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;

    Notes


    • Note if you actively use ngx_pagespeed 1.9 branch, you will have conflicts with ngx_brotli in that ngx_brotli will disable ngx_pagespeed functionality. If you don't use ngx_pagespeed, then that doesn't matter as Nginx will still work as will ngx_brotli. This is fixed in ngx_pagespeed 1.10 branch. However, ngx_pagespeed 1.10 branch has newer GCC >4.8 requirements and has problems with CentOS 6 systems that use GCC 4.4.7 right now. I just merged 123.09beta01-gcc + 123.09beta01 latest into a new branch 123.09beta01-gcc2 which has an experimental workaround for ngx_pagespeed 1.10 and CentOS 6 systems.
    • Both ngx_brotli and ngx_pagespeed 1.10 branches have higher GCC >4.8 version compiler requirements so for CentOS 6 based Centmin Mod LEMP stack systems with GCC 4.4.7 defaults, 123.09beta01 and 123.09beta01-gcc2 branches install devtoolset-3 YUM repo which provides an alternate path install for GCC 4.9.1. This keeps system GCC 4.4.7 working so doesn't break CentOS 6 systems. This GCC 4.9.1 version is used to compile ngx_brotli and nginx + ngx_pagespeed 1.10. CentOS 7.x doesn't need devtoolset-3 as it defaults to using GCC 4.8.5.
     
    Last edited: Jan 22, 2016
    • Like Like x 1
  3. Andy

    Andy Active Member

    333
    48
    28
    Aug 6, 2014
    Ratings:
    +57
    Local Time:
    5:32 AM
    Ok, so I have Centos 7.2, pagespeed 1.9.32.11, gcc 4.8.5
    What do i have to do to get all the latest version working for this brotli?
    Code:
    nginx -V
    nginx version: nginx/1.9.9
    built by clang 3.4.2 (tags/RELEASE_34/dot2-final)
    built with LibreSSL 2.2.5
    TLS SNI support enabled
    configure arguments: --with-ld-opt='-lrt -ljemalloc -Wl,-z,relro -Wl,-rpath,/usr/local/lib' --with-cc-opt='-m64 -mtune=native -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wno-sign-compare -Wno-string-plus-int -Wno-deprecated-declarations -Wno-unused-parameter -Wno-unused-const-variable -Wno-conditional-uninitialized -Wno-mismatched-tags -Wno-c++11-extensions -Wno-sometimes-uninitialized -Wno-parentheses-equality -Wno-tautological-compare -Wno-self-assign -Wno-deprecated-register -Wno-deprecated -Wno-invalid-source-encoding -Wno-pointer-sign -Wno-parentheses -Wno-enum-conversion' --sbin-path=/usr/local/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_stub_status_module --with-http_secure_link_module --with-openssl-opt=enable-tlsext --add-module=../nginx-module-vts --with-libatomic --with-threads --with-stream --with-stream_ssl_module --with-http_gzip_static_module --add-module=../ngx_pagespeed-release-1.9.32.11-beta --with-http_sub_module --with-http_addition_module --with-http_image_filter_module --with-http_geoip_module --with-http_realip_module --add-module=../nginx-accesskey-2.0.3 --add-module=../nginx-http-concat-master --add-module=../ngx-fancyindex-ngx-fancyindex --add-module=../ngx_cache_purge-2.3 --add-module=../ngx_devel_kit-0.2.19 --add-module=../set-misc-nginx-module-0.29 --add-module=../echo-nginx-module-0.58 --add-module=../redis2-nginx-module-0.12 --add-module=../ngx_http_redis-0.3.7 --add-module=../lua-nginx-module-0.9.19 --add-module=../lua-upstream-nginx-module-0.04 --add-module=../lua-upstream-cache-nginx-module-0.1.1 --add-module=../nginx_upstream_check_module-0.3.0 --add-module=../openresty-memc-nginx-module-4f6f78f --add-module=../openresty-srcache-nginx-module-ffa9ab7 --add-module=../headers-more-nginx-module-0.28 --with-pcre=../pcre-8.38 --with-pcre-jit --with-http_ssl_module --with-http_v2_module --with-openssl=../libressl-2.2.5
     
  4. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    Do you actually use ngx_pagespeed ? meaning do you enable it in your vhosts and use pscontrol on to enable it ?

    If you use and enable ngx_pagespeed



    If you do, then you need to switch to 123.09beta01-gcc2 branch which has ngx_pagespeed 1.10.x branch and via centmin.sh menu option 23 submenu option 3 first. Then exit out of centmin.sh and re-enter /usr/local/src/centminmod. Then using persistent config option outlined at centminmod.com/upgrade.html#persistent at /etc/centminmod/custom_config.inc and adding to it the below variable and then run centmin.sh menu option 4 to recompile Nginx. Note, 123.09beta01-gcc2 branch doesn't get all the timely updates that 123.09beta01 gets as 123.09beta01-gcc2 is solely just for testing ngx_pagespeed 1.10.x with devtoolset-3 based GCC 4.9.1 for CentOS 6.
    Code:
    NGINX_LIBBROTLI=y
    
    End result will be 123.09beta01-gcc2 switches Nginx compiler back from Clang to GCC 4.9.1 for CentOS 6 or GCC 4.8.5 for CentOS 7.

    If you DO NOT use and enable ngx_pagespeed



    If you DO NOT use ngx_pagespeed and have not used pscontrol on command to enable it and setup (uncomment 3 lines) in your vhost for pagespeed related *.conf, then you can just use existing 123.09beta01 with existing ngx_pagespeed 1.9.x version and using persistent config option outlined at centminmod.com/upgrade.html#persistent at /etc/centminmod/custom_config.inc and adding to it the below variable and then run centmin.sh menu option 4 to recompile Nginx.

    In fact if you DO NOT use ngx_pagespeed at all, you can disable it from being compiled with nginx via FAQ 31 outlined settings
    Code:
    NGINX_LIBBROTLI=y
    NGINX_PAGESPEED=n
    
     
    Last edited: Jan 22, 2016
    • Informative Informative x 1
  5. RoldanLT

    RoldanLT Well-Known Member

    3,975
    965
    113
    May 25, 2014
    Phillipines
    Ratings:
    +1,329
    Local Time:
    6:32 PM
    1.11
    10.2
    I'll just wait for Cloudflare to support this :D.
    Lazy mode....
     
    • Funny Funny x 2
  6. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    Lazy mode LOL

    FYI, webpagetest.org Dulles, VA region is only one with option to select Firefox Nightly browser support which has brotli support in browser so when you check headers look for content-encoding = br

    wpt-firefox-nightly-220116.png
     
  7. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    And Cloudflare's Brotli vs Gzip/Zlib benchmarks Results of experimenting with Brotli for dynamic web content :D

    so I guess for speed instead of compression ratio something like these settings might be better ? but that is for cloudflare's zlib level 8 vs brotli level 4. Apache and Nginx usually default to zlib/gzip around level 6

    Code:
            brotli on;
            brotli_static on;
            brotli_min_length 50000;
            brotli_buffers 32 8k;
            brotli_comp_level 4;
            brotli_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
    So for zlib/gzip level 6 vs brotli level 4 lets revisit Cloudflare's compression speed (not compression ratio).
    • zlib level 8 all files compression speed = 43.1MB/s with 27.7% compression ratio on 100KB file would take 0.0022658 seconds
    • zlib level 6 all files compression speed = 58MB/s with 27.8% compression ratio on 100KB file would take 0.0016837 seconds
    • brotli level 5 all files compression speed = 30.3MB/s with 26.1% compression ratio on 100KB file would take 0.0032229 seconds
    • brotli level 4 all files compression speed = 51MB/s with 27.7% compression ratio on 100KB file would take 0.0019148 seconds
    So with that info, seems brotli level 4 is about the same or slightly better than zlib level 6 for ALL files

    [20,1024) [1024,2048) [2048,3072) [3072,4096) [4096,8192) [8192,16384) [16384,32768) [32768,65536) [65536,+∞) All files
    zlib 1 5.9 21.8 34.4 43.4 62.1 89.8 117.9 127.9 139.6 125.5
    zlib 2 5.9 21.7 34.3 43.0 61.2 87.6 114.3 123.1 130.7 118.9
    zlib 3 5.9 21.7 34.0 42.4 60.5 84.8 108.0 114.5 114.9 106.9
    zlib 4 5.8 20.9 32.2 39.8 54.8 74.9 93.3 97.5 96.1 90.7
    zlib 5 5.8 20.6 31.4 38.3 51.6 68.4 82.0 81.3 73.2 71.6
    zlib 6 5.8 20.6 31.2 37.9 50.6 64.0 73.7 70.2 57.5 58.0
    zlib 7 5.8 20.5 31.0 37.4 49.6 60.8 67.4 64.6 51.0 52.0
    zlib 8 5.8 20.5 31.0 37.2 48.8 53.2 56.6 56.5 41.6 43.1
    zlib 9 5.8 20.6 30.8 37.3 48.6 51.7 56.6 54.2 40.4 41.9
    brotli 1 3.4 12.8 20.4 25.9 37.8 57.3 80.0 94.1 105.8 91.3
    brotli 2 3.4 12.4 19.5 24.4 35.2 52.3 71.2 82.0 89.0 78.8
    brotli 3 3.4 12.3 19.0 23.7 34.0 49.8 67.4 76.3 81.5 73.0
    brotli 4 2.0 7.6 11.9 15.2 22.2 33.1 44.7 51.9 58.5 51.0
    brotli 5 2.0 5.2 8.0 10.3 15.0 22.0 29.7 33.3 32.8 30.3
    brotli 6 1.8 3.8 5.5 7.0 10.5 16.3 23.5 28.6 28.4 25.6
    brotli 7 1.5 2.3 3.1 3.7 4.9 7.2 10.7 15.5 19.6 16.2
    brotli 8 1.4 2.3 2.7 3.1 4.0 5.3 7.1 10.6 15.1 12.2
    brotli 9 1.3 2.1 2.4 2.8 3.4 4.3 5.5 7.0 10.6 8.8
    brotli 10 0.2 0.4 0.4 0.5 0.5 0.6 0.6 0.6 0.5 0.5


    However, if you break it down by file sizes you can still see brotli level 4 having benefits over zlib/gzip levels 6 and 8. For compression ratios for level 6 and 8 zlib vs brotli level 4 and 5:

    [20,1024) [1024,2048) [2048,3072) [3072,4096) [4096,8192) [8192,16384) [16384,32768) [32768,65536) [65536,+∞) All files
    zlib 6 64.4% 45.5% 41.3% 36.7% 32.0% 29.3% 27.0% 27.6% 27.6% 27.8%
    zlib 8 64.4% 45.5% 41.3% 36.6% 32.0% 29.2% 26.9% 27.5% 27.4% 27.7%
    brotli 4 53.8% 40.8% 38.6% 34.8% 30.9% 28.7% 27.0% 28.0% 27.5% 27.7%
    brotli 5 49.9% 37.7% 35.7% 32.3% 28.7% 26.6% 25.2% 26.2% 26.0% 26.1%


    So maybe still keep level 5 brotli compression given the actual speed difference is minor ?
    Code:
            brotli on;
            brotli_static on;
            brotli_min_length 1000;
            brotli_buffers 32 8k;
            brotli_comp_level 5;
            brotli_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
    Connection speed up of Brotli in MB/s from Cloudflare results

    [20,1024) [1024,2048) [2048,3072) [3072,4096) [4096,8192) [8192,16384) [16384,32768) [32768,65536) [65536,+∞) All files
    brotli 4 0.33 0.56 0.52 0.47 0.42 0.44 -0.24 -2.86 0.02 0.00
    brotli 5 0.44 0.55 0.60 0.61 0.71 0.97 1.01 1.08 2.24 1.58
    brotli 6 0.36 0.36 0.37 0.37 0.45 0.63 0.69 0.86 1.52 1.12
    brotli 7 0.28 0.20 0.19 0.18 0.19 0.23 0.24 0.34 0.72 0.52
    brotli 8 0.26 0.20 0.17 0.15 0.15 0.17 0.15 0.21 0.48 0.35
    brotli 9 0.25 0.19 0.15 0.13 0.13 0.13 0.11 0.13 0.30 0.24
    brotli 10 0.03 0.04 0.04 0.04 0.03 0.03 0.02 0.02 0.02 0.02

     
    Last edited: Jan 23, 2016
    • Informative Informative x 1
  8. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    FYI, Firefox 44 seems to be released and has Brotli support Firefox — Notes (44.0) — Mozilla

     
  9. Sunka

    Sunka Active Member

    931
    242
    43
    Oct 31, 2015
    Rijeka, Croatia
    Ratings:
    +392
    Local Time:
    11:32 AM
    Nginx 1.13.3
    MariaDB 10.1.24
    So, If I do not using pagespeed, I can just add this to /etc/centminmod/custom_config.inc
    NGINX_LIBBROTLI=y
    Like this:
    Code:
    date.timezone = UTC
    max_execution_time = 60
    short_open_tag = On
    realpath_cache_size = 4096k
    realpath_cache_ttl = 43200
    upload_max_filesize = 512M
    memory_limit = 512M
    post_max_size = 512M
    expose_php = Off
    mail.add_x_header = Off
    max_input_nesting_level = 128
    max_input_vars = 10000
    mysqlnd.net_cmd_buffer_size = 16384
    always_populate_raw_post_data=-1
    NGINX_LIBBROTLI=y
    And then run option 4 and choose same nginx version like I have now (1.9.10), and that is it?

    What about this part:
    Code:
    brotli on;
            brotli_static on;
            brotli_min_length 1400;
            brotli_buffers 32 8k;
            brotli_comp_level 5;
            brotli_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
    Should I add it to my nginx.conf somewhere (below gzip part)?
    If answer is yes, I have to do that before recompile nginx?
    Code:
    user  nginx nginx;
    worker_processes 2;
    worker_priority -10;
    
    worker_rlimit_nofile 260000;
    timer_resolution 100ms;
    
    pcre_jit on;
    
    pid  logs/nginx.pid;
    
    events {
      worker_connections  4096;
      accept_mutex on;
      accept_mutex_delay 200ms;
      use epoll;
      #multi_accept on;
    }
    
    http {
    limit_req_zone $binary_remote_addr zone=xwplogin:16m rate=40r/m;
    #limit_conn_zone $binary_remote_addr zone=xwpconlimit:16m;
    
    more_set_headers "Server: nginx centminmod";
    
    include /usr/local/nginx/conf/vts_http.conf;
    include /usr/local/nginx/conf/geoip.conf;
    include /usr/local/nginx/conf/pagespeedadmin.conf;
    include /usr/local/nginx/conf/fastcgi_param_https_map.conf;
    
    log_format  main  '$remote_addr - $remote_user [$time_local] $request '
      '"$status" $body_bytes_sent "$http_referer" '
      '"$http_user_agent" "$http_x_forwarded_for" "$gzip_ratio"'
      ' "$connection" "$connection_requests" "$request_time"';
    
    access_log  logs/access.log combined buffer=128k flush=5m;
    error_log  logs/error.log warn;
    
      index  index.php index.html index.htm;
      include  mime.types;
      default_type  application/octet-stream;
      charset utf-8;
    
      sendfile on;
      sendfile_max_chunk 512k;
      tcp_nopush  on;
      tcp_nodelay on;
      server_tokens off;
      server_name_in_redirect off;
      keepalive_timeout  8;
      keepalive_requests 1000;
      lingering_time 20s;
      lingering_timeout 5s;
      keepalive_disable msie6;
    
      gzip on;
      gzip_vary  on;
      gzip_disable "MSIE [1-6]\.";
      gzip_static on;
      gzip_min_length  1400;
      gzip_buffers  32 8k;
      gzip_http_version 1.0;
      gzip_comp_level 5;
      gzip_proxied  any;
      gzip_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
    
     
    brotli on;
            brotli_static on;
            brotli_min_length 1400;
            brotli_buffers 32 8k;
            brotli_comp_level 5;
            brotli_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
    
    client_body_buffer_size 256k;
    client_body_in_file_only off;
    client_body_timeout 10s;
    client_header_buffer_size 64k;
    ## how long a connection has to complete sending
    ## it's headers for request to be processed
    client_header_timeout  8s;
    client_max_body_size 120m;
    connection_pool_size  512;
    directio  4m;
    ignore_invalid_headers on; 
    large_client_header_buffers 8 64k;
    output_buffers  8 256k;
    postpone_output  1460;
    proxy_temp_path  /tmp/nginx_proxy/;
    request_pool_size  32k;
    reset_timedout_connection on;
    send_timeout  15s;
    types_hash_max_size 2048;
    server_names_hash_bucket_size 64;
    
    # for nginx proxy backends to prevent redirects to backend port
    # port_in_redirect off;
    
    open_file_cache max=50000 inactive=60s;
    open_file_cache_valid 120s;
    open_file_cache_min_uses 2;
    open_file_cache_errors off;
    open_log_file_cache max=10000 inactive=30s min_uses=2;
    
    ## limit number of concurrency connections per ip to 16
    ## add to your server {} section the next line
    ## limit_conn limit_per_ip 16;
    ## uncomment below line allows 500K sessions
    # limit_conn_log_level error;
    #######################################
    # use limit_zone for Nginx <v1.1.7 and lower
    # limit_zone $binary_remote_addr zone=limit_per_ip:16m;
    #######################################
    # use limit_conn_zone for Nginx >v1.1.8 and higher
    # limit_conn_zone $binary_remote_addr zone=limit_per_ip:16m;
    #######################################
    
    include /usr/local/nginx/conf/conf.d/*.conf;
    }
     
  10. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    the php settings don't belong in custom_config.inc they belong in their own *.ini php file as outlined at PHP-FPM - CentminMod.com LEMP Nginx web stack for CentOS
    Code:
    NGINX_LIBBROTLI=y
    NGINX_PAGESPEED=n
    yes
    no need to do anything Centmin Mod nginx compilation routine will detect NGINX_LIBBROTLI=y and automatically add those settings into an include file /usr/local/nginx/conf/brotli_inc.conf inserted into nginx.conf. So if you want to edit those settings edit /usr/local/nginx/conf/brotli_inc.conf
     
    Last edited: Mar 20, 2016
    • Informative Informative x 1
  11. Sunka

    Sunka Active Member

    931
    242
    43
    Oct 31, 2015
    Rijeka, Croatia
    Ratings:
    +392
    Local Time:
    11:32 AM
    Nginx 1.13.3
    MariaDB 10.1.24
    I have nothing changed there. This values are there by default
    I have mine custom ini settings but this file is untouched since centmin installed (If I am right).

    OK, this is correct file /etc/centminmod/custom_config.inc to add at the end:
    NGINX_LIBBROTLI=y

    I am not using pagespeed but maybe in future will, so it will not be mistake if I don't set NGINX_PAGESPEED=n, because I have not used pscontrol on command to enable it and setup (uncomment 3 lines) in my vhost for pagespeed related *.conf

    So
    Code:
    nano /etc/centminmod/custom_config.inc
    add NGINX_LIBBROTLI=y at the end
    centmin
    option 4
    recompile nginx to same version 1.9.10
    That is it?

    Default values are optimised enough?
     
  12. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    Yup
    Yup :D
     
    • Informative Informative x 1
  13. Sunka

    Sunka Active Member

    931
    242
    43
    Oct 31, 2015
    Rijeka, Croatia
    Ratings:
    +392
    Local Time:
    11:32 AM
    Nginx 1.13.3
    MariaDB 10.1.24
    Just to be sure. I have to create new file in /etc/centminmod/ named custom_config.inc
    Not in /etc/centminmod/php.d
     
  14. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    • Like Like x 1
  15. Sunka

    Sunka Active Member

    931
    242
    43
    Oct 31, 2015
    Rijeka, Croatia
    Ratings:
    +392
    Local Time:
    11:32 AM
    Nginx 1.13.3
    MariaDB 10.1.24
    Done! Brotli installed (and enabled by default I hope).

    P.S.Regarding this one quoted bellow, I see now that I read wrong file. You are right @eva2000 like usually ;)
     
    • Like Like x 1
  16. Jimmy

    Jimmy Premium Member Premium Member

    1,165
    256
    83
    Oct 24, 2015
    East Coast USA
    Ratings:
    +626
    Local Time:
    5:32 AM
    1.13.x
    MariaDB 10.1.x
    Nice addition. I love how CMM is always on the cutting edge of awesome stuff! Good job once again @eva2000
     
    • Like Like x 1
  17. prometheus

    prometheus Member

    39
    4
    8
    Jan 24, 2015
    Greece
    Ratings:
    +9
    Local Time:
    12:32 PM
    1.9.9
    10.1
    My configuration doesnt have /usr/local/nginx/conf/brotli_inc.conf, what can I do?
    I have compiled with custom_config.inc

     
  18. eva2000

    eva2000 Administrator Staff Member

    30,897
    6,907
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +10,402
    Local Time:
    8:32 PM
    Nginx 1.13.x
    MariaDB 5.5
    you installing on centmin mod 123.09beta01 ? only this version as brotli support. Centmin Mod 123.08stable doesn't support brotli

    if on 123.09beta01, check if the actual file exists
    Code:
    ls -lah /usr/local/nginx/conf/brotli_inc.conf
     
  19. Andy

    Andy Active Member

    333
    48
    28
    Aug 6, 2014
    Ratings:
    +57
    Local Time:
    5:32 AM
    I have 123.09beta1 and I don't have that file.