**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`.

used_output.out->addHeaderCORS(settings.add_http_cors_header && !request.get("Origin", "").empty());
    auto append_callback = [&context] (ProgressCallback callback)
    {
        auto prev = context.getProgressCallback();
        context.setProgressCallback([prev, callback] (const Progress & progress)
        {
            if (prev)
                prev(progress);
            callback(progress);
        });
    };
    
    if (settings.send_progress_in_http_headers)
        append_callback([&used_output] (const Progress & progress) { used_output.out->onProgress(progress); });
    if (settings.readonly > 0 && settings.cancel_http_readonly_queries_on_client_close)
    {
        Poco::Net::StreamSocket & socket = dynamic_cast<Poco::Net::HTTPServerRequestImpl &>(request).socket();
        append_callback([&context, &socket](const Progress &)
        {
            
            
            try
            {
                char b;
                int status = socket.receiveBytes(&b, 1, MSG_DONTWAIT | MSG_PEEK);
                if (status == 0)
                    context.killCurrentQuery();
            }