diff --git a/mongoose.c b/mongoose.c index 66a6f98bcf54728f51f30c1d161c64a540787da5..74325e9899aec817c6112f39277cc908bff91e64 100644 --- a/mongoose.c +++ b/mongoose.c @@ -4202,6 +4202,8 @@ static void handle_request(struct mg_connection *conn) { get_remote_ip(conn), ri->uri); DEBUG_TRACE(("%s", ri->uri)); + // Perform redirect and auth checks before calling begin_request() handler. + // Otherwise, begin_request() would need to perform auth checks and redirects. if (!conn->client.is_ssl && conn->client.ssl_redir && (ssl_index = get_first_ssl_listener_index(conn->ctx)) > -1) { redirect_to_https_port(conn, ssl_index);