@@ -239,6 +239,10 @@ http {
239
239
large_client_header_buffers {{ $cfg.LargeClientHeaderBuffers }};
240
240
client_body_buffer_size {{ $cfg.ClientBodyBufferSize }};
241
241
client_body_timeout {{ $cfg.ClientBodyTimeout }}s;
242
+
243
+ http2_max_field_size {{ $cfg.HTTP2MaxFieldSize }};
244
+ http2_max_header_size {{ $cfg.HTTP2MaxHeaderSize }};
245
+ http2_max_requests {{ $cfg.HTTP2MaxRequests }};
242
246
http2_max_concurrent_streams {{ $cfg.HTTP2MaxConcurrentStreams }};
243
247
244
248
types_hash_max_size 2048;
@@ -847,24 +851,33 @@ stream {
847
851
848
852
{{/* CORS support from https://michielkalkman.com/snippets/nginx-cors-open-configuration.html */}}
849
853
{{ define "CORS" }}
850
- {{ $cors := .CorsConfig }}
851
- # Cors Preflight methods needs additional options and different Return Code
852
- if ($request_method = 'OPTIONS') {
853
- more_set_headers 'Access-Control-Allow-Origin: {{ $cors.CorsAllowOrigin }}';
854
- {{ if $cors.CorsAllowCredentials }} more_set_headers 'Access-Control-Allow-Credentials: {{ $cors.CorsAllowCredentials }}'; {{ end }}
855
- more_set_headers 'Access-Control-Allow-Methods: {{ $cors.CorsAllowMethods }}';
856
- more_set_headers 'Access-Control-Allow-Headers: {{ $cors.CorsAllowHeaders }}';
857
- more_set_headers 'Access-Control-Max-Age: {{ $cors.CorsMaxAge }}';
858
- more_set_headers 'Content-Type: text/plain charset=UTF-8';
859
- more_set_headers 'Content-Length: 0';
860
- return 204;
861
- }
862
-
863
- more_set_headers 'Access-Control-Allow-Origin: {{ $cors.CorsAllowOrigin }}';
854
+ {{ $cors := .CorsConfig }}
855
+ # Cors Preflight methods needs additional options and different Return Code
856
+ {{ if $cors.CorsAllowOrigin }}
857
+ {{ buildCorsOriginRegex $cors.CorsAllowOrigin }}
858
+ {{ end }}
859
+ if ($request_method = 'OPTIONS') {
860
+ set $cors ${cors}options;
861
+ }
862
+
863
+ if ($cors = "true") {
864
+ more_set_headers 'Access-Control-Allow-Origin: $http_origin';
864
865
{{ if $cors.CorsAllowCredentials }} more_set_headers 'Access-Control-Allow-Credentials: {{ $cors.CorsAllowCredentials }}'; {{ end }}
865
866
more_set_headers 'Access-Control-Allow-Methods: {{ $cors.CorsAllowMethods }}';
866
867
more_set_headers 'Access-Control-Allow-Headers: {{ $cors.CorsAllowHeaders }}';
868
+ more_set_headers 'Access-Control-Max-Age: {{ $cors.CorsMaxAge }}';
869
+ }
867
870
871
+ if ($cors = "trueoptions") {
872
+ more_set_headers 'Access-Control-Allow-Origin: $http_origin';
873
+ {{ if $cors.CorsAllowCredentials }} more_set_headers 'Access-Control-Allow-Credentials: {{ $cors.CorsAllowCredentials }}'; {{ end }}
874
+ more_set_headers 'Access-Control-Allow-Methods: {{ $cors.CorsAllowMethods }}';
875
+ more_set_headers 'Access-Control-Allow-Headers: {{ $cors.CorsAllowHeaders }}';
876
+ more_set_headers 'Access-Control-Max-Age: {{ $cors.CorsMaxAge }}';
877
+ more_set_headers 'Content-Type: text/plain charset=UTF-8';
878
+ more_set_headers 'Content-Length: 0';
879
+ return 204;
880
+ }
868
881
{{ end }}
869
882
870
883
{{/* definition of server-template to avoid repetitions with server-alias */}}
@@ -905,6 +918,8 @@ stream {
905
918
root /etc/nginx/htdocs;
906
919
}
907
920
921
+
922
+
908
923
{{ if not (empty $server.AuthTLSError) }}
909
924
# {{ $server.AuthTLSError }}
910
925
return 403;
@@ -1255,42 +1270,6 @@ stream {
1255
1270
1256
1271
set $enable_cors_options_credentials "${metadata_enable_cors}_${request_method}_${metadata_cors_allow_credentials}";
1257
1272
set $metadata_enable_cors_credentials "${metadata_enable_cors}_${metadata_cors_allow_credentials}";
1258
-
1259
- if ($enable_cors_options_credentials = "true_OPTIONS_true") {
1260
- # Cors Preflight methods needs additional options and different Return Code
1261
- more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1262
- more_set_headers 'Access-Control-Allow-Credentials: $metadata_cors_allow_credentials';
1263
- more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1264
- more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1265
- more_set_headers 'Access-Control-Max-Age: $metadata_cors_max_age';
1266
- more_set_headers 'Content-Type: text/plain charset=UTF-8';
1267
- more_set_headers 'Content-Length: 0';
1268
- return 204;
1269
- }
1270
-
1271
- if ($enable_cors_options_credentials = "true_OPTIONS_false") {
1272
- # Cors Preflight methods needs additional options and different Return Code
1273
- more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1274
- more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1275
- more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1276
- more_set_headers 'Access-Control-Max-Age: $metadata_cors_max_age';
1277
- more_set_headers 'Content-Type: text/plain charset=UTF-8';
1278
- more_set_headers 'Content-Length: 0';
1279
- return 204;
1280
- }
1281
-
1282
- if ($metadata_enable_cors_credentials = "true_true") {
1283
- more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1284
- more_set_headers 'Access-Control-Allow-Credentials: $metadata_cors_allow_credentials';
1285
- more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1286
- more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1287
- }
1288
-
1289
- if ($metadata_enable_cors_credentials = "true_false") {
1290
- more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1291
- more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1292
- more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1293
- }
1294
1273
{{ end }}
1295
1274
1296
1275
{{ buildInfluxDB $location.InfluxDB }}
@@ -1371,6 +1350,44 @@ stream {
1371
1350
{{ $proxySetHeader }} {{ $k }} {{ $v | quote }};
1372
1351
{{ end }}
1373
1352
1353
+ {{ if not $all.Cfg.TengineReload }}
1354
+ if ($enable_cors_options_credentials = "true_OPTIONS_true") {
1355
+ # Cors Preflight methods needs additional options and different Return Code
1356
+ more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1357
+ more_set_headers 'Access-Control-Allow-Credentials: $metadata_cors_allow_credentials';
1358
+ more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1359
+ more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1360
+ more_set_headers 'Access-Control-Max-Age: $metadata_cors_max_age';
1361
+ more_set_headers 'Content-Type: text/plain charset=UTF-8';
1362
+ more_set_headers 'Content-Length: 0';
1363
+ return 204;
1364
+ }
1365
+
1366
+ if ($enable_cors_options_credentials = "true_OPTIONS_false") {
1367
+ # Cors Preflight methods needs additional options and different Return Code
1368
+ more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1369
+ more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1370
+ more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1371
+ more_set_headers 'Access-Control-Max-Age: $metadata_cors_max_age';
1372
+ more_set_headers 'Content-Type: text/plain charset=UTF-8';
1373
+ more_set_headers 'Content-Length: 0';
1374
+ return 204;
1375
+ }
1376
+
1377
+ if ($metadata_enable_cors_credentials = "true_true") {
1378
+ more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1379
+ more_set_headers 'Access-Control-Allow-Credentials: $metadata_cors_allow_credentials';
1380
+ more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1381
+ more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1382
+ }
1383
+
1384
+ if ($metadata_enable_cors_credentials = "true_false") {
1385
+ more_set_headers 'Access-Control-Allow-Origin: $metadata_cors_allow_origin';
1386
+ more_set_headers 'Access-Control-Allow-Methods: $metadata_cors_allow_methods';
1387
+ more_set_headers 'Access-Control-Allow-Headers: $metadata_cors_allow_headers';
1388
+ }
1389
+ {{ end }}
1390
+
1374
1391
proxy_connect_timeout {{ $location.Proxy.ConnectTimeout }}s;
1375
1392
proxy_send_timeout {{ $location.Proxy.SendTimeout }}s;
1376
1393
proxy_read_timeout {{ $location.Proxy.ReadTimeout }}s;
@@ -1459,6 +1476,7 @@ stream {
1459
1476
{{ end }}
1460
1477
}
1461
1478
1479
+ {{ if eq $path "/" }}
1462
1480
location /robots.txt {
1463
1481
header_filter_by_lua_block {
1464
1482
lua_ingress.header()
@@ -1475,7 +1493,6 @@ stream {
1475
1493
set $log_host "robots.tengine.com";
1476
1494
proxy_set_header Host $http_host;
1477
1495
proxy_set_header X-Request-From {{ $all.Cfg.TengineIngressAppName }};
1478
- add_header Timing-Allow-Origin $https_use_timing;
1479
1496
1480
1497
{{ if $all.Cfg.TengineReload }}
1481
1498
{{ if not $location.DisableRobots }}
@@ -1504,6 +1521,7 @@ stream {
1504
1521
}
1505
1522
{{ end }}
1506
1523
{{ end }}
1524
+ {{ end }}
1507
1525
1508
1526
{{ if eq $server.Hostname "_" }}
1509
1527
# health checks in cloud providers require the use of port {{ $all.ListenPorts.HTTP }}
0 commit comments