From 908771f5d4098c0138aa819bb8209145d2b1eb16 Mon Sep 17 00:00:00 2001 From: Rachit Bhargava Date: Wed, 27 Dec 2023 22:50:26 +0000 Subject: [PATCH] Merged in feature/cache (pull request #13) Feature/cache * cache-purge * cache-purge * fix conflicts * resolve merge conflicts --- Dockerfile | 2 + build/dev/web-default-conf-cm.yaml | 67 ++++++++++++++++++--------- build/prod/deployment.tpl | 4 +- build/prod/web-default-conf-cm.yaml | 60 +++++++++++++++++------- build/qa/web-default-conf-cm.yaml | 67 ++++++++++++++++++--------- build/stage/web-default-conf-cm.yaml | 61 ++++++++++++++++-------- common-jobs-bitbucket.sh | 8 +++- ngx_http_cache_purge_module.so | Bin 0 -> 129752 bytes 8 files changed, 184 insertions(+), 85 deletions(-) create mode 100644 ngx_http_cache_purge_module.so diff --git a/Dockerfile b/Dockerfile index a485d1d8..e2434b21 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,9 @@ FROM wyveo/nginx-php-fpm:php74 RUN mkdir -p /var/lib/nginx/cache /usr/share/nginx/subdomain; cd /usr/share/nginx/subdomain ; mkdir www COPY wp/ /usr/share/nginx/subdomain/www +COPY ngx_http_cache_purge_module.so /usr/lib/nginx/modules/ RUN sed -i 's/;pm.status_path/pm.status_path/g' /etc/php/7.4/fpm/pool.d/www.conf +RUN sed -i -e '1iload_module modules/ngx_http_cache_purge_module.so;\' /etc/nginx/nginx.conf #RUN rm /etc/nginx/conf.d/default.conf #COPY build/default.conf /etc/nginx/conf.d/default.conf COPY redinessprobe-wp.sh /root/redinessprobe-wp.sh diff --git a/build/dev/web-default-conf-cm.yaml b/build/dev/web-default-conf-cm.yaml index 23d9c8b6..6af99ae1 100644 --- a/build/dev/web-default-conf-cm.yaml +++ b/build/dev/web-default-conf-cm.yaml @@ -9,49 +9,63 @@ data: default.conf: | # --------------------- - fastcgi_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=MYAPP:100m inactive=60m; + fastcgi_cache_path /usr/share/nginx/subdomain/www/wp-content/uploads/cache levels=1:2 keys_zone=MYAPP: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; # ----------------------------------------- fastcgi_intercept_errors on; fastcgi_ignore_client_abort on; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 120; + fastcgi_cache_min_uses 1; + fastcgi_cache_lock on; #fastcgi_index index.php; # -------------------------------- - + # Only cache positive responses proxy_cache_valid 200 1h; - proxy_cache_valid 301 302 15m; + proxy_cache_valid 301 302 0m; server { + + # -------------------------- client_max_body_size 100m; + # ------------------------------- + listen 80 default; ## listen for ipv4; this line is default and implied listen [::]:80 default ipv6only=on; ## listen for ipv6 server_name dev-medicalalert.com ""; - - return 301 https://www.$host$request_uri; + + return 301 https://www.dev-medicalalert.com$request_uri; root /usr/share/nginx/subdomain/www; index index.php index.html index.htm; - + } - + subdomain.conf: | server { + #----------------------------- client_max_body_size 100m; + # ------------------------ + client_body_timeout 1200; + client_header_timeout 600; + # --------------------------- + listen 80; listen [::]:80; - + server_name ~^(?.+)\.dev-medicalalert\.com$; - + if ($http_x_forwarded_proto != 'https') { return 301 https://$host$request_uri; } - + root /usr/share/nginx/subdomain/$subdomain; index index.php index.html index.htm; sendfile off; @@ -89,11 +103,18 @@ data: } #Don't cache the following URLs - if ($request_uri ~* "/(administrator/|wp-login.php)") - { + if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|sitemap(_index)?.xml") { + set $no_cache 1; } + + # Don't use the cache for logged in users or recent commenters + if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { + set $no_cache 1; + } + + #Don't cache if there is a cookie called PHPSESSID if ($http_cookie = "PHPSESSID") { @@ -108,9 +129,9 @@ data: fastcgi_param SUBDOMAIN $subdomain; # $_SERVER["SUBDOMAIN"] include fastcgi_params; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; @@ -141,22 +162,24 @@ data: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; } - location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { + 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)$ { expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; proxy_cache_background_update on; proxy_cache_lock on; + fastcgi_cache_bypass $no_cache; + fastcgi_no_cache $no_cache; } # deny access to . files, for security diff --git a/build/prod/deployment.tpl b/build/prod/deployment.tpl index e8d61ee4..3123309c 100644 --- a/build/prod/deployment.tpl +++ b/build/prod/deployment.tpl @@ -83,8 +83,8 @@ spec: timeoutSeconds: 10 resources: limits: - cpu: 500m - memory: 1024Mi + cpu: 1000m + memory: 3072Mi requests: cpu: 300m memory: 700Mi diff --git a/build/prod/web-default-conf-cm.yaml b/build/prod/web-default-conf-cm.yaml index 3e359bef..c6bf5378 100644 --- a/build/prod/web-default-conf-cm.yaml +++ b/build/prod/web-default-conf-cm.yaml @@ -9,49 +9,60 @@ data: default.conf: | # --------------------- - fastcgi_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=MYAPP:100m inactive=60m; + fastcgi_cache_path /usr/share/nginx/subdomain/www/wp-content/uploads/cache levels=1:2 keys_zone=MYAPP: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; # ----------------------------------------- fastcgi_intercept_errors on; fastcgi_ignore_client_abort on; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 120; + fastcgi_cache_min_uses 1; + fastcgi_cache_lock on; #fastcgi_index index.php; # -------------------------------- - + # Only cache positive responses proxy_cache_valid 200 1h; - proxy_cache_valid 301 302 15m; + proxy_cache_valid 301 302 0m; server { + + # -------------------------- client_max_body_size 100m; + # ------------------------------- + listen 80 default; ## listen for ipv4; this line is default and implied listen [::]:80 default ipv6only=on; ## listen for ipv6 server_name medicalalert.com ""; - - return 301 https://www.$host$request_uri; + + return 301 https://www.medicalalert.com$request_uri; root /usr/share/nginx/subdomain/www; index index.php index.html index.htm; - + } - + subdomain.conf: | server { + #----------------------------- client_max_body_size 100m; + # ------------------------ + listen 80; listen [::]:80; - + server_name ~^(?.+)\.medicalalert\.com$; - + if ($http_x_forwarded_proto != 'https') { return 301 https://$host$request_uri; } - + root /usr/share/nginx/subdomain/$subdomain; index index.php index.html index.htm; sendfile off; @@ -89,11 +100,18 @@ data: } #Don't cache the following URLs - if ($request_uri ~* "/(administrator/|wp-login.php)") - { + if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|sitemap(_index)?.xml") { + set $no_cache 1; } + + # Don't use the cache for logged in users or recent commenters + if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { + set $no_cache 1; + } + + #Don't cache if there is a cookie called PHPSESSID if ($http_cookie = "PHPSESSID") { @@ -109,7 +127,8 @@ data: include fastcgi_params; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; @@ -140,19 +159,24 @@ data: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 5m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; } - location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { + 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)$ { + expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; proxy_cache_background_update on; proxy_cache_lock on; + fastcgi_cache_bypass $no_cache; + fastcgi_no_cache $no_cache; } # deny access to . files, for security @@ -264,7 +288,6 @@ data: } location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { - expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; @@ -279,6 +302,7 @@ data: log_not_found off; deny all; } + location ~ ^/(status|ping)$ { access_log off; allow 127.0.0.1; diff --git a/build/qa/web-default-conf-cm.yaml b/build/qa/web-default-conf-cm.yaml index d7e4e815..9167d9a7 100644 --- a/build/qa/web-default-conf-cm.yaml +++ b/build/qa/web-default-conf-cm.yaml @@ -9,49 +9,60 @@ data: default.conf: | # --------------------- - fastcgi_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=MYAPP:100m inactive=60m; + fastcgi_cache_path /usr/share/nginx/subdomain/www/wp-content/uploads/cache levels=1:2 keys_zone=MYAPP: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; # ----------------------------------------- fastcgi_intercept_errors on; fastcgi_ignore_client_abort on; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 120; + fastcgi_cache_min_uses 1; + fastcgi_cache_lock on; #fastcgi_index index.php; # -------------------------------- - + # Only cache positive responses proxy_cache_valid 200 1h; - proxy_cache_valid 301 302 15m; + proxy_cache_valid 301 302 0m; server { + + # -------------------------- client_max_body_size 100m; + # ------------------------------- + listen 80 default; ## listen for ipv4; this line is default and implied listen [::]:80 default ipv6only=on; ## listen for ipv6 server_name qa-medicalalert.com ""; - - return 301 https://www.$host$request_uri; + + return 301 https://www.qa-medicalalert.com$request_uri; root /usr/share/nginx/subdomain/www; index index.php index.html index.htm; - + } - + subdomain.conf: | server { + #----------------------------- client_max_body_size 100m; + # ------------------------ + listen 80; listen [::]:80; - + server_name ~^(?.+)\.qa-medicalalert\.com$; - + if ($http_x_forwarded_proto != 'https') { return 301 https://$host$request_uri; } - + root /usr/share/nginx/subdomain/$subdomain; index index.php index.html index.htm; sendfile off; @@ -89,11 +100,18 @@ data: } #Don't cache the following URLs - if ($request_uri ~* "/(administrator/|wp-login.php)") - { + if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|sitemap(_index)?.xml") { + set $no_cache 1; } + + # Don't use the cache for logged in users or recent commenters + if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { + set $no_cache 1; + } + + #Don't cache if there is a cookie called PHPSESSID if ($http_cookie = "PHPSESSID") { @@ -108,9 +126,9 @@ data: fastcgi_param SUBDOMAIN $subdomain; # $_SERVER["SUBDOMAIN"] include fastcgi_params; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; @@ -141,21 +159,24 @@ data: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; } - location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { + 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)$ { + expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 302 60m; - fastcgi_cache_valid 301 1h; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; proxy_cache_background_update on; proxy_cache_lock on; + fastcgi_cache_bypass $no_cache; + fastcgi_no_cache $no_cache; } # deny access to . files, for security @@ -269,7 +290,6 @@ data: } location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { - expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; fastcgi_cache_valid 200 302 60m; @@ -285,6 +305,7 @@ data: log_not_found off; deny all; } + location ~ ^/(status|ping)$ { access_log off; allow 127.0.0.1; diff --git a/build/stage/web-default-conf-cm.yaml b/build/stage/web-default-conf-cm.yaml index 7568640f..1412406c 100644 --- a/build/stage/web-default-conf-cm.yaml +++ b/build/stage/web-default-conf-cm.yaml @@ -9,49 +9,60 @@ data: default.conf: | # --------------------- - fastcgi_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=MYAPP:100m inactive=60m; + fastcgi_cache_path /usr/share/nginx/subdomain/www/wp-content/uploads/cache levels=1:2 keys_zone=MYAPP: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; # ----------------------------------------- fastcgi_intercept_errors on; fastcgi_ignore_client_abort on; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 120; + fastcgi_cache_min_uses 1; + fastcgi_cache_lock on; #fastcgi_index index.php; # -------------------------------- - + # Only cache positive responses proxy_cache_valid 200 1h; - proxy_cache_valid 301 302 15m; + proxy_cache_valid 301 302 0m; server { + + # -------------------------- client_max_body_size 100m; + # ------------------------------- + listen 80 default; ## listen for ipv4; this line is default and implied listen [::]:80 default ipv6only=on; ## listen for ipv6 server_name stage-medicalalert.com ""; - - return 301 https://www.$host$request_uri; + + return 301 https://www.stage-medicalalert.com$request_uri; root /usr/share/nginx/subdomain/www; index index.php index.html index.htm; - + } - + subdomain.conf: | server { + #----------------------------- client_max_body_size 100m; + # ------------------------ + listen 80; listen [::]:80; - - server_name ~^(?.+)\.medicalalert\.com$; - + + server_name ~^(?.+)\.stage-medicalalert\.com$; + if ($http_x_forwarded_proto != 'https') { return 301 https://$host$request_uri; } - + root /usr/share/nginx/subdomain/$subdomain; index index.php index.html index.htm; sendfile off; @@ -89,11 +100,18 @@ data: } #Don't cache the following URLs - if ($request_uri ~* "/(administrator/|wp-login.php)") - { + if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|sitemap(_index)?.xml") { + set $no_cache 1; } + + # Don't use the cache for logged in users or recent commenters + if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { + set $no_cache 1; + } + + #Don't cache if there is a cookie called PHPSESSID if ($http_cookie = "PHPSESSID") { @@ -109,7 +127,8 @@ data: include fastcgi_params; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; @@ -140,19 +159,24 @@ data: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_cache MYAPP; - fastcgi_cache_valid 200 5m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 200 60m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; } - location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { + 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)$ { + expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; - fastcgi_cache_valid any 1m; + fastcgi_cache_valid 301 302 0m; + fastcgi_cache_valid any 1m; proxy_cache_background_update on; proxy_cache_lock on; + fastcgi_cache_bypass $no_cache; + fastcgi_no_cache $no_cache; } # deny access to . files, for security @@ -264,7 +288,6 @@ data: } location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { - expires 7d; proxy_set_header X-Forwarded-Proto $scheme; fastcgi_cache MYAPP; fastcgi_cache_valid 200 60m; diff --git a/common-jobs-bitbucket.sh b/common-jobs-bitbucket.sh index 5030223a..42243818 100644 --- a/common-jobs-bitbucket.sh +++ b/common-jobs-bitbucket.sh @@ -259,7 +259,13 @@ kubectl exec common-job-pod -n $NAMESPACE -- sh -c '. /tmp/setenv.sh; mkdir -p / # ---------------------------------------------------------------------------------------------------------------------------------------------------- kubectl exec common-job-pod -n $NAMESPACE -- sh -c '. /tmp/setenv.sh; mkdir /tmp/uploads ;export FILE=`ls /tmp/*.zip`;unzip -o $FILE -d /tmp/uploads' kubectl exec common-job-pod -n $NAMESPACE -- sh -c '. /tmp/setenv.sh; rclone sync /tmp/uploads/ /usr/share/nginx/subdomain/$SUBDOMAIN/wp-content/uploads -q && echo ---sync-done--- ' -# -------------------------------------------------------------------------------------- +# ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + +# --------------------------------------------------------------------------------------------------------------------------------------------------- +kubectl exec common-job-pod -n $NAMESPACE -- sh -c '. /tmp/setenv.sh; mkdir /usr/share/nginx/subdomain/$SUBDOMAIN/wp-content/uploads/cache && echo ---CacheCreated---' +# ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- + + kubectl delete po common-job-pod -n $NAMESPACE cat script.log | egrep -v "Errors:|SQL|rewrite|Rewrite|warning|Warning|create mode" | egrep -i "not in gzip format|fail|fatal|exception|terminated|command not found|error|unexpected|cannot access|No such file" && exit 9 || echo VALIDATION_PASS_$opt diff --git a/ngx_http_cache_purge_module.so b/ngx_http_cache_purge_module.so new file mode 100644 index 0000000000000000000000000000000000000000..db9d10f652f72a4a2ffc3d5eddc6d98b6554405a GIT binary patch literal 129752 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 chf7H&{?S~2qwTAE{VV=KOAh8L