summaryrefslogtreecommitdiff
path: root/nginx
diff options
context:
space:
mode:
authorDaniel Micay <danielmicay@gmail.com>2021-12-05 02:48:44 -0500
committerDaniel Micay <danielmicay@gmail.com>2021-12-05 02:48:44 -0500
commit7010b230c526d716f5899c1f4ea104a965625a23 (patch)
tree26df258bf3d764b6250c08cd7aacd98ae026eaa1 /nginx
parent27c50cd9a7a464ef47db416f24ee3bff8f8bbcca (diff)
use http2_push instead of http2_push_preload
This avoids needing to conditionally add nopush to each preloaded resource in the Link header. There's also no support for pushing JavaScript modules via http2_push_preload since nginx doesn't have support for rel=modulepreload.
Diffstat (limited to 'nginx')
-rw-r--r--nginx/nginx.conf21
-rw-r--r--nginx/snippets/preload.conf7
2 files changed, 21 insertions, 7 deletions
diff --git a/nginx/nginx.conf b/nginx/nginx.conf
index a97b63b4..c134b235 100644
--- a/nginx/nginx.conf
+++ b/nginx/nginx.conf
@@ -77,15 +77,26 @@ http {
default 0;
}
- map $nopush $preload_resources {
- 1 "<{{path|/main.css}}>; rel=preload; nopush; as=style; integrity={{integrity|/main.css}}, </fonts/roboto-v29-regular-latin.woff2>; rel=preload; nopush; as=font; crossorigin, </fonts/roboto-v29-bold-latin.woff2>; rel=preload; nopush; as=font; crossorigin, <{{path|/mask-icon.svg}}>; rel=preload; nopush; as=image";
- default "<{{path|/main.css}}>; rel=preload; as=style; integrity={{integrity|/main.css}}, </fonts/roboto-v29-regular-latin.woff2>; rel=preload; as=font; crossorigin, </fonts/roboto-v29-bold-latin.woff2>; rel=preload; as=font; crossorigin, <{{path|/mask-icon.svg}}>; rel=preload; as=image";
- }
-
map $nopush $push_cookie {
0 "__Host-preload=1; HttpOnly; Secure; SameSite=Lax; Path=/";
}
+ map $nopush $push_stylesheet {
+ 0 "{{path|/main.css}}";
+ }
+
+ map $nopush $push_font_regular {
+ 0 /fonts/roboto-v29-regular-latin.woff2;
+ }
+
+ map $nopush $push_font_bold {
+ 0 /fonts/roboto-v29-bold-latin.woff2;
+ }
+
+ map $nopush $push_mask_icon {
+ 0 "{{path|/mask-icon.svg}}";
+ }
+
server {
listen 80 backlog=4096;
listen [::]:80 backlog=4096;
diff --git a/nginx/snippets/preload.conf b/nginx/snippets/preload.conf
index 8b369f5a..67ba6fd4 100644
--- a/nginx/snippets/preload.conf
+++ b/nginx/snippets/preload.conf
@@ -1,3 +1,6 @@
-add_header Link $preload_resources always;
+add_header Link "<{{path|/main.css}}>; rel=preload; as=style; integrity={{integrity|/main.css}}, </fonts/roboto-v29-regular-latin.woff2>; rel=preload; as=font; crossorigin, </fonts/roboto-v29-bold-latin.woff2>; rel=preload; as=font; crossorigin, <{{path|/mask-icon.svg}}>; rel=preload; as=image" always;
add_header Set-Cookie $push_cookie always;
-http2_push_preload on;
+http2_push $push_stylesheet;
+http2_push $push_font_regular;
+http2_push $push_font_bold;
+http2_push $push_mask_icon;