Changes with Apache 2.0.34-dev
+ *) When a proxied site was being served, Apache was replacing
+ the original site Server header with it's own, which is not
+ allowed by RFC2616. Fixed. [Graham Leggett]
+
*) Fix a mod_cgid problem that left daemon processes stranded
in some server restart scenarios. [Jeff Trawick]
{
char *date;
char *tmp;
+ const char *server;
header_struct h;
apr_size_t len;
h.pool = r->pool;
h.bb = bb;
form_header_field(&h, "Date", date);
- form_header_field(&h, "Server", ap_get_server_version());
+ /* keep a previously set server header (possibly from proxy), otherwise
+ * generate a new server header */
+ if (server = apr_table_get(r->headers_out, "Server")) {
+ form_header_field(&h, "Server", server);
+ }
+ else {
+ form_header_field(&h, "Server", ap_get_server_version());
+ }
+
+ /* unset so we don't send them again */
apr_table_unset(r->headers_out, "Date"); /* Avoid bogosity */
apr_table_unset(r->headers_out, "Server");
}