diff --git a/src/mux_fcgi.c b/src/mux_fcgi.c
index 68954c0..7cc69e4 100644
--- a/src/mux_fcgi.c
+++ b/src/mux_fcgi.c
@@ -32,6 +32,7 @@
 #include <haproxy/stream.h>
 #include <haproxy/stream_interface.h>
 #include <haproxy/trace.h>
+#include <haproxy/version.h>
 
 
 /* FCGI Connection flags (32 bits) */
@@ -186,7 +187,8 @@
 #define FCGI_SP_PATH_TRANS     0x00002000
 #define FCGI_SP_CONT_LEN       0x00004000
 #define FCGI_SP_HTTPS          0x00008000
-#define FCGI_SP_MASK           0x0000FFFF
+#define FCGI_SP_SRV_SOFT       0x00010000
+#define FCGI_SP_MASK           0x0001FFFF
 #define FCGI_SP_URI_MASK       (FCGI_SP_SCRIPT_NAME|FCGI_SP_PATH_INFO|FCGI_SP_REQ_QS)
 
 /* FCGI parameters used when PARAMS record is sent */
@@ -204,6 +206,7 @@
 	struct ist rem_addr;
 	struct ist rem_port;
 	struct ist cont_len;
+	struct ist srv_soft;
 	int https;
 	struct buffer *p;
 };
@@ -1401,6 +1404,12 @@
 		}
 	}
 
+	if (!(params->mask & FCGI_SP_SRV_SOFT)) {
+		params->srv_soft = ist2(b_tail(params->p), 0);
+		chunk_appendf(params->p, "HAProxy %s", haproxy_version);
+		params->srv_soft.len = b_tail(params->p) - params->srv_soft.ptr;
+	}
+
   end:
 	return 1;
   error:
@@ -1490,6 +1499,10 @@
 			p.n = ist("HTTPS");
 			p.v = ist("on");
 			goto encode;
+		case FCGI_SP_SRV_SOFT:
+			p.n = ist("SERVER_SOFTWARE");
+			p.v = params->srv_soft;
+			goto encode;
 		default:
 			goto skip;
 	}
@@ -1983,6 +1996,8 @@
 						params.mask |= FCGI_SP_PATH_TRANS;
 					else if (isteq(p.n, ist("https")))
 						params.mask |= FCGI_SP_HTTPS;
+					else if (isteq(p.n, ist("server_software")))
+						params.mask |= FCGI_SP_SRV_SOFT;
 				}
 				else if (isteq(p.n, ist("content-length"))) {
 					p.n = ist("CONTENT_LENGTH");
@@ -2061,6 +2076,7 @@
 	    !fcgi_encode_default_param(fconn, fstrm, &params, &outbuf, FCGI_SP_SCRIPT_FILE) ||
 	    !fcgi_encode_default_param(fconn, fstrm, &params, &outbuf, FCGI_SP_PATH_TRANS)  ||
 	    !fcgi_encode_default_param(fconn, fstrm, &params, &outbuf, FCGI_SP_CONT_LEN)    ||
+	    !fcgi_encode_default_param(fconn, fstrm, &params, &outbuf, FCGI_SP_SRV_SOFT)    ||
 	    !fcgi_encode_default_param(fconn, fstrm, &params, &outbuf, FCGI_SP_HTTPS))
 		goto error;
 
