**Use case**
ClickHouse as a web server becomes a viable scenario.
(At least in backoffice).

**Describe the solution you'd like**
Add this field.

**Additional context**
It's in question how to name it. The original HTTP specs has the famous typo in it and name it `referer`. While JavaScript has this typo fixed and name it `referrer`.

{
    
    
    const auto & set_query_params = [&](const char * begin, const char * end, const CompiledRegexPtr & compiled_regex)
    {
        int num_captures = compiled_regex->NumberOfCapturingGroups() + 1;
        re2::StringPiece matches[num_captures];
        re2::StringPiece input(begin, end - begin);
        if (compiled_regex->Match(input, 0, end - begin, re2::RE2::Anchor::ANCHOR_BOTH, matches, num_captures))
        {
            for (const auto & [capturing_name, capturing_index] : compiled_regex->NamedCapturingGroups())
            {
                const auto & capturing_value = matches[capturing_index];
                if (capturing_value.data())
                    context.setQueryParameter(capturing_name, String(capturing_value.data(), capturing_value.size()));
            }
        }
    };
    if (url_regex)
    {
        const auto & uri = request.getURI();
        set_query_params(uri.data(), find_first_symbols<'?'>(uri.data(), uri.data() + uri.size()), url_regex);
    }
    for (const auto & [header_name, regex] : header_name_with_capture_regex)
    {
        const auto & header_value = request.get(header_name);
        set_query_params(header_value.data(), header_value.data() + header_value.size(), regex);
    }
}
std::string PredefinedQueryHandler::getQuery(Poco::Net::HTTPServerRequest & request, HTMLForm & params, Context & context)