Вторник , Май 22 2018
Home » Web сервера » Оптимизация » HTTP 2 NGINX Рабочий конфиг.

HTTP 2 NGINX Рабочий конфиг.

http2nginx-config

Не так давно сайты начали переходить на новый протокол HTTP 2 с легкой подачи корпорации добра, вот и я решил протестировать данный протокол, и воочию увидеть все его преимущества. К сожалению он меня не порадовал, скорость сайта из-за SSL соединения упала на 200ms, пинговал до стокгольма до нью-орка на 500ms и это с включенным кэшированием fastcgi_cache, без него и того больше. Я не знаю может что делал не так и кто нибудь подскажет что в моем конфиге не так??

fastcgi_cache_path /usr/local/cache/nginx/wp.playserver.net levels=1:2 keys_zone=proxy:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_ignore_headers Cache-Control Expires Set-Cookie;

server {
    listen 80;
    server_name wp.playserver.net;
    return 301 https://$host$request_uri;
    }

server {
listen 443 ssl http2;
         server_name wp.playserver.net;
         root /usr/local/www/wp.playserver.net;
         index index.php;
         underscores_in_headers off;
         keepalive_timeout 15;
         ssl on;
         ssl_certificate /etc/nginx/ssl/wp-bundle.crt;
         ssl_certificate_key /etc/nginx/ssl/certificate.key;
         ssl_dhparam /etc/nginx/ssl/dhparam.pem;
         ssl_session_cache shared:SSL:5m;
         ssl_session_timeout 5m;
         ssl_session_tickets on;
         ssl_prefer_server_ciphers On;
         ssl_ciphers  HIGH:!aNULL:!MD5;
         ssl_stapling on;
         ssl_stapling_verify  on;
         ssl_buffer_size 4k;
         resolver 8.8.4.4 8.8.8.8 valid=100s;
         resolver_timeout 4s;
         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

         set $skip_cache 0;

	 if ($request_method = POST) {
		set $skip_cache 1;
	 }   
	 if ($query_string != "") {
		set $skip_cache 1;
	 }   

	 if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
		set $skip_cache 1;
	 }   

	 if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
		set $skip_cache 1;
	 }
   

gzip                    on;
gzip_http_version       1.0;
gzip_min_length         1100;
gzip_buffers           16 8k;
gzip_types
    text/css
    text/javascript
    text/xml
    text/plain
    text/x-component
    application/javascript
    application/x-javascript
    application/json
    application/xml
    application/rss+xml
    application/atom+xml
    font/truetype
    font/opentype
    application/vnd.ms-fontobject
    image/svg+xml;
gzip_proxied            expired no-cache no-store private auth;
gzip_disable            "msie6";
gzip_vary               on;
gzip_comp_level         5;


location ~* ^.+.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf|css|js|woff2)$ {
        access_log off; expires max; add_header Last-Modified: $date_gmt;
        }

location / {
        try_files $uri $uri/ /index.php?$args;
        }

location ~ .php$ {
        fastcgi_pass php7;
        include /etc/nginx/snippets/fastcgi-php.conf;
        fastcgi_cache_bypass $skip_cache;
	fastcgi_no_cache $skip_cache;
        fastcgi_cache proxy;
        fastcgi_cache_valid  60m;
        fastcgi_cache_valid 200 301 302 404 1h;
        fastcgi_buffers 16 16k;
        fastcgi_buffer_size 32k;
        fastcgi_param SERVER_NAME $http_host;
        fastcgi_ignore_headers Cache-Control Expires Set-Cookie;
        fastcgi_keep_conn on;
        }
}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *