diff --git a/etc/nginx/fastcgi_cache b/etc/nginx/fastcgi_cache index d4ebdf4..9f1b1f7 100644 --- a/etc/nginx/fastcgi_cache +++ b/etc/nginx/fastcgi_cache @@ -1,13 +1,11 @@ ## Include this file if you want to use fastcgi_cache across many sites. # Designed to be included in /etc/nginx/nginx.conf http {} block. -fastcgi_cache_path /var/cache/nginx/fastcgi_cache levels=1:2 keys_zone=FASTCGICACHE:100m max_size=1g inactive=60m; +fastcgi_cache_path /var/cache/nginx/fastcgi_cache levels=1:2 keys_zone=LEMPERCACHE:200m max_size=10g inactive=2h; fastcgi_cache_key "$scheme$request_method$host$request_uri"; -fastcgi_cache_use_stale error timeout invalid_header updating http_500 http_503; fastcgi_cache_revalidate on; fastcgi_cache_background_update on; - # FastCGI Log Format log_format cache '$remote_addr - $upstream_cache_status [$time_local] ' '"$request" $status $body_bytes_sent ' diff --git a/etc/nginx/includes/fastcgi.conf b/etc/nginx/includes/fastcgi.conf index 41c7634..27aa5e1 100644 --- a/etc/nginx/includes/fastcgi.conf +++ b/etc/nginx/includes/fastcgi.conf @@ -3,9 +3,9 @@ fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; -fastcgi_connect_timeout 60; -fastcgi_send_timeout 90; -fastcgi_read_timeout 90; +fastcgi_connect_timeout 120s; +fastcgi_send_timeout 120s; +fastcgi_read_timeout 120s; fastcgi_buffer_size 128k; fastcgi_buffers 128 128k; fastcgi_busy_buffers_size 128k; diff --git a/etc/nginx/includes/fastcgi_cache.conf b/etc/nginx/includes/fastcgi_cache.conf index 25c23b2..7b14c68 100644 --- a/etc/nginx/includes/fastcgi_cache.conf +++ b/etc/nginx/includes/fastcgi_cache.conf @@ -1,23 +1,23 @@ ## FastCGI cache. # Designed to be included in any http, server, location block. -fastcgi_cache FASTCGICACHE; -fastcgi_cache_valid 200 301 302 60m; +fastcgi_cache LEMPERCACHE; +fastcgi_cache_valid 200 301 302 2h; fastcgi_cache_valid 404 1m; -fastcgi_cache_valid any 60m; +fastcgi_cache_valid any 2h; +fastcgi_cache_use_stale error timeout invalid_header updating http_500 http_503; fastcgi_cache_min_uses 1; fastcgi_cache_lock on; fastcgi_cache_bypass $skip_cache $is_mobile; fastcgi_cache_bypass $http_pragma $http_authorization; - fastcgi_no_cache $skip_cache $is_mobile; fastcgi_no_cache $http_pragma $http_authorization; fastcgi_cache_purge $purge_method; # Ignore header (Added Pragma, crosscheck first) -fastcgi_ignore_headers X-Accel-Expires Expires Cache-Control Set-Cookie; +fastcgi_ignore_headers Cache-Control Expires Set-Cookie; # Header status add_header X-FastCGI-Cache $upstream_cache_status; diff --git a/etc/nginx/includes/rules_fastcgi_cache.conf b/etc/nginx/includes/rules_fastcgi_cache.conf index bce9eac..ed64781 100644 --- a/etc/nginx/includes/rules_fastcgi_cache.conf +++ b/etc/nginx/includes/rules_fastcgi_cache.conf @@ -78,14 +78,14 @@ if ($cookie_woocommerce_items_in_cart = "1") { ## Purging FastCGI cache ## # Purge uri. -location ~ /purge(/.*) { +location ~ ^/(.*)/purge { allow 127.0.0.1; #allow SERVER_IP; deny all; access_log off; log_not_found off; - fastcgi_cache_purge FASTCGICACHE "$scheme$request_method$host$1"; - #return 301 $scheme://$host$1; + fastcgi_cache_purge LEMPERCACHE "$scheme$request_method$host$1"; + return 301 $scheme://$host/$1; } ## You may add your own FastCGI cache rules here... diff --git a/etc/nginx/includes/rules_restriction.conf b/etc/nginx/includes/rules_restriction.conf index 0345a4e..646a947 100644 --- a/etc/nginx/includes/rules_restriction.conf +++ b/etc/nginx/includes/rules_restriction.conf @@ -33,8 +33,7 @@ location ~ /\.ht { } # Deny all attempts to access error and access log file. -location ~ /(error|access)\_log$ -{ +location ~ /(error|access)\_log$ { deny all; log_not_found off; return 404; @@ -93,12 +92,13 @@ location ~* /(?:uploads|files)/.*\.php$ { } # Deny access to PHP file in site files directory. -location ~ ^/sites/.*/private/ { +location ~ ^/sites/[^/]+/files/.*\.php$ { deny all; log_not_found off; return 404; } -location ~ ^/sites/[^/]+/files/.*\.php$ { + +location ~ ^/sites/.*/private/ { deny all; log_not_found off; return 404; diff --git a/etc/nginx/includes/rules_staticfiles.conf b/etc/nginx/includes/rules_staticfiles.conf index d3c1465..e7137d8 100644 --- a/etc/nginx/includes/rules_staticfiles.conf +++ b/etc/nginx/includes/rules_staticfiles.conf @@ -25,7 +25,7 @@ location ~ \.(?:atom|feed|rss|json)$ { } # Header setting for known static files. -location ~ \.(?:ogg|ogv|3gp|gif|jpeg|jpg|png|wmv|avi|asf|asx|mpg|mpeg|mp4|pls|mp3|mid|wav|swf|flv|exe|zip|tar|rar|gz|tgz|bz2|uha|7z|doc|docx|xls|xlsx|rtf|rtx|txt|pdf|iso)$ { +location ~ \.(?:gif|jpeg|jpg|png|webp|wmv|avi|asf|asx|ogg|ogv|3gp|mpg|mpeg|mp4|pls|mp3|mid|wav|swf|flv|exe|zip|tar|rar|gz|tgz|bz2|uha|7z|doc|docx|xls|xlsx|rtf|rtx|txt|pdf|iso)$ { add_header Pragma "public"; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; access_log off; @@ -52,7 +52,7 @@ location ~ \.(eot|svg|svgz|ttf|woff|woff2)$ { } # Dynamic thumbnail/resized image. -location ~ (timthumb|thumbs|image|images|img)\.php?src=.*\.(jpg|jpeg|png|gif).* { +location ~ (timthumb|thumbs|image|images|img)\.php?src=.*\.(jpg|jpeg|png|gif|webp).* { add_header Pragma "public"; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; access_log off;