X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mods%2Fsample-nginx-reverse-proxy.config;h=e5faa64034d89adedb13fca06c04c110f6b89380;hb=4585335db93777463bf917604a8c8339b61eac91;hp=afc74dfc4a42fbcc7cf638623d501b5205fd7ebc;hpb=29f7ebe307c22b275466390937b82ccb3820fb1c;p=friendica.git diff --git a/mods/sample-nginx-reverse-proxy.config b/mods/sample-nginx-reverse-proxy.config index afc74dfc4a..e5faa64034 100644 --- a/mods/sample-nginx-reverse-proxy.config +++ b/mods/sample-nginx-reverse-proxy.config @@ -15,6 +15,25 @@ # ----- ... + +## +# by https://syshero.org/2018-04-13-nginx-unique-request-identifier/ +# if X-Request-ID is set, NGINX will forward the same value to the next upstream +# if the header is not set, NGINX will generate a random request identifier and add it to the request. +# +# To guarantee backward compatibility, map to format the $request_id variable to a format that matches any old setups. +## + +map $request_id $formatted_id { + "~*(?[0-9a-f]{8})(?[0-9a-f]{4})(?[0-9a-f]{4})(?[0-9a-f]{4})(?.*)$" "${p1}-${p2}-${p3}-${p4}-${p5}"; +} + +map $http_x_request_id $uuid { + default "${request_id}"; + ~* "${http_x_request_id}"; +} + + server { ... @@ -30,6 +49,7 @@ server { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Forwarded "for=$proxy_add_x_forwarded_for; proto=$scheme"; + proxy_set_header X-Request-ID $uuid; } ...