# You have Friendica installed in /var/www/friendica
##
+##
+# 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 {
+ "~*(?<p1>[0-9a-f]{8})(?<p2>[0-9a-f]{4})(?<p3>[0-9a-f]{4})(?<p4>[0-9a-f]{4})(?<p5>.*)$" "${p1}-${p2}-${p3}-${p4}-${p5}";
+}
+
+map $http_x_request_id $uuid {
+ default "${request_id}";
+ ~* "${http_x_request_id}";
+}
+
server {
listen 80;
server_name friendica.example.net;
# allow uploads up to 20MB in size
client_max_body_size 20m;
client_body_buffer_size 128k;
+
+ # add the request id header to show it in the HTTP header output
+ add_header X-Request-ID $uuid;
# rewrite to front controller as default rule
location / {
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+
+ fastcgi_param HTTP_X_REQUEST_ID $uuid;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;