mirror of
https://github.com/apache/httpd.git
synced 2025-08-08 15:02:10 +03:00
fixing h2c scheme/authority initialization
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1714557 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
|
||||
#include <httpd.h>
|
||||
#include <http_core.h>
|
||||
#include <http_protocol.h>
|
||||
#include <http_config.h>
|
||||
#include <http_log.h>
|
||||
|
||||
@@ -134,22 +135,28 @@ apr_status_t h2_request_rwrite(h2_request *req, request_rec *r)
|
||||
apr_status_t status;
|
||||
|
||||
req->method = r->method;
|
||||
req->authority = r->hostname;
|
||||
req->path = r->uri;
|
||||
req->scheme = (r->parsed_uri.scheme? r->parsed_uri.scheme
|
||||
: r->server->server_scheme);
|
||||
|
||||
if (!ap_strchr_c(req->authority, ':') && r->parsed_uri.port_str) {
|
||||
req->authority = apr_psprintf(r->pool, "%s:%s", req->authority,
|
||||
r->parsed_uri.port_str);
|
||||
: ap_http_scheme(r));
|
||||
req->authority = r->hostname;
|
||||
req->path = apr_uri_unparse(r->pool, &r->parsed_uri,
|
||||
APR_URI_UNP_OMITSITEPART);
|
||||
|
||||
if (!ap_strchr_c(req->authority, ':') && r->server) {
|
||||
req->authority = apr_psprintf(r->pool, "%s:%d", req->authority,
|
||||
(int)r->server->port);
|
||||
}
|
||||
|
||||
AP_DEBUG_ASSERT(req->scheme);
|
||||
AP_DEBUG_ASSERT(req->authority);
|
||||
AP_DEBUG_ASSERT(req->path);
|
||||
AP_DEBUG_ASSERT(req->method);
|
||||
|
||||
status = add_all_h1_header(req, r->pool, r->headers_in);
|
||||
|
||||
ap_log_rerror(APLOG_MARK, APLOG_DEBUG, status, r,
|
||||
"h2_request(%d): rwrite %s host=%s://%s%s",
|
||||
req->id, req->method, req->scheme, req->authority, req->path);
|
||||
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user