SynGreis
Posts: 105
Joined: Tue Nov 07, 2017 6:26 am

ubuntu with nginx enabling brotli support.

Tue Jul 21, 2020 9:18 pm

so i was following this guide ==> https://www.howtoforge.com/tutorial/how ... untu-1804/

everything was successful and i compiled it and installed nginx.

but when i try to actually use brotli it shows its not being encoded.

heres my site. www.dereksfuckingblog.ca (original right?)

and here is my configs.

site.conf

Code: Select all

server {
	listen						80;
	listen						[::]:80;
	server_name 				www.dereksfuckingblog.ca dereksfuckingblog.ca;
	root 						/home/blog/;
	index 						index.html;
	
	access_log 					access.log;
	error_log 					error.log;

	location / {
		try_files $uri $uri/ =404;
	}
	location ~ \.php$ {
		include snippets/fastcgi-php.conf;
		fastcgi_pass unix:/run/php/php7.3-fpm.sock;
	}
}
server {
    listen 443 ssl http2;
    server_name www.dereksfuckingblog.ca dereksfuckingblog.ca;
    ssl_certificate /etc/letsencrypt/dereksfuckingblog.ca/fullchain.cer;
    ssl_certificate_key /etc/letsencrypt/dereksfuckingblog.ca/dereksfuckingblog.ca.key;
    root 						/home/blog/;
	index 						index.html;
	
	access_log 					access.log;
	error_log 					error.log;

	location / {
		try_files $uri $uri/ =404;
	}
	location ~ \.php$ {
		include snippets/fastcgi-php.conf;
		fastcgi_pass unix:/run/php/php7.3-fpm.sock;
	}
}
nginx.conf

Code: Select all

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
	worker_connections 			768;
	# multi_accept 				on;
}

http {
	sendfile 					on;
	tcp_nopush 					on;
	tcp_nodelay 				on;
	keepalive_timeout 			65;
	types_hash_max_size 		2048;
	client_max_body_size 		512M;
	proxy_read_timeout 			180s;
	
	client_header_timeout 		3000;
	client_body_timeout 		3000;
	fastcgi_read_timeout		3000;
	fastcgi_buffers 			8 128k;
	fastcgi_buffer_size 		128k;

	server_names_hash_bucket_size 64;
	
	include 					/etc/nginx/mime.types;
	default_type 				application/octet-stream;

    gzip 						on;
    gzip_disable 				"msie6";
    gzip_vary 					on;
    gzip_proxied 				any;
    gzip_comp_level 			6;
    gzip_buffers 				32 16k;
    gzip_http_version 			1.1;
    gzip_min_length 			250;
    gzip_types 					image/jpeg image/bmp image/svg+xml text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon;
    
    brotli						on;
    brotli_comp_level 			4;
    brotli_buffers 32 			8k;
    brotli_min_length 			100;
    brotli_static 				on;
    brotli_types 				image/jpeg image/bmp image/svg+xml text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon;
	
    #pagespeed 					on;
    #pagespeed FileCachePath 	/var/cache/ngx_pagespeed_cache;
    #location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
		#add_header "" "";
    #}
    #location ~ "^/pagespeed_static/" { }
    #location ~ "^/ngx_pagespeed_beacon$" { }
    #pagespeed RewriteLevel PassThrough;
    #pagespeed EnableCachePurge on;
    #pagespeed PurgeMethod PURGE;
    #pagespeed EnableFilters prioritize_critical_css;
	#pagespeed EnableFilters rewrite_css;
	#pagespeed EnableFilters collapse_whitespace,remove_comments;
	#pagespeed EnableFilters flatten_css_imports;
	#pagespeed EnableFilters combine_css;
	#pagespeed EnableFilters combine_javascript;
	#pagespeed EnableFilters defer_javascript;
	#pagespeed EnableFilters extend_cache;
	#pagespeed EnableFilters pedantic;
	#pagespeed EnableFilters inline_google_font_css;
	#pagespeed FetchHttps enable;
	#pagespeed EnableFilters inline_css,move_css_above_scripts;
	#pagespeed EnableFilters inline_javascript;
	#pagespeed EnableFilters inline_import_to_link;
	#pagespeed EnableFilters lazyload_images;
	#pagespeed EnableFilters insert_dns_prefetch;
	#pagespeed EnableFilters inline_preview_images;
	#pagespeed EnableFilters resize_mobile_images;
	#pagespeed EnableFilters rewrite_images;
	#pagespeed EnableFilters responsive_images,resize_images;
	#pagespeed EnableFilters responsive_images_zoom;
	#pagespeed EnableFilters rewrite_javascript;
	#pagespeed EnableFilters rewrite_style_attributes,convert_meta_tags;

	ssl_dhparam 				/home/certs/dhparam.pem;
	ssl_ecdh_curve 				secp384r1;
	ssl_protocols 				TLSv1.2 TLSv1.3;
	ssl_prefer_server_ciphers 	on;
	ssl_ciphers 				AES256+EECDH:AES256+EDH:!aNULL;
	ssl_session_cache 			shared:SSL:50m;
	ssl_session_tickets 		on;
	ssl_stapling 				on;
	ssl_stapling_verify 		on;
	resolver 					8.8.8.8 8.8.4.4 208.67.222.222 208.67.220.220 valid=60s;
	resolver_timeout 			2s;
	
	add_header 					X-Cache-Status $upstream_cache_status;
	add_header 					X-Frame-Options "SAMEORIGIN" always;
	add_header 					X-XSS-Protection "1; mode=block" always;
	add_header 					X-Content-Type-Options "nosniff" always;
	add_header 					Referrer-Policy "no-referrer-when-downgrade" always;
	add_header 					Content-Security-Policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" always;
	add_header 					Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

	include 					/etc/nginx/conf.d/*.conf;
}
how can i actually verify if brotli is included in my current nginx build? because im a bit lost for words as i dont know what im doing wrong.

Return to “Ubuntu”