> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-detect-table-modification.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# configurações de sessão http_*

> Configurações de sessão do ClickHouse no grupo http_* gerado.

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["Versão", "Valor padrão", "Comentário"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        Histórico de versões
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Tipo</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Padrão</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Pode ser alterado sem reiniciar
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Essas configurações estão disponíveis em [system.settings](/pt-BR/reference/system-tables/settings) e são geradas automaticamente a partir do [código-fonte](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="http_allow_database_as_path">
  ## http\_allow\_database\_as\_path
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "0"},{"label": "Nova configuração para reconhecer um nome de banco de dados no caminho da URL de requisições HTTP."}]}]} />

Quando habilitada, a interface HTTP reconhece o componente `/database/` no caminho da URL e o usa como banco de dados atual.

Esta é uma configuração por usuário que controla se uma requisição roteada baseada em caminho é interpretada. O roteamento em si é controlado globalmente pela configuração `http_allow_path_requests` no nível do servidor (desativada por padrão), que deve ser habilitada para que a interface HTTP encaminhe uma requisição baseada em caminho (como `/my_db/my_table.csv`) ao manipulador de consultas — essa decisão de roteamento é tomada antes da autenticação da requisição e, portanto, não pode depender de uma configuração por usuário. Quando `http_allow_path_requests` está desativada, caminhos desconhecidos retornam um `404` simples. Após o roteamento, essa configuração é verificada novamente com base nas configurações efetivas do usuário autenticado, podendo ser habilitada seletivamente por usuário, função ou perfil.

<div id="http_allow_filters_as_path">
  ## http\_allow\_filters\_as\_path
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "0"},{"label": "Nova configuração para reconhecer filtros `name=value` no estilo Hive no caminho da URL de requisições HTTP."}]}]} />

Quando habilitada, a interface HTTP reconhece componentes `/name=value/` no caminho (estilo de particionamento Hive) e os converte em filtros combinados com AND. Os operadores `>`, `<`, `>=`, `<=`, `!=`, `<>` também são reconhecidos.

Assim como [`http_allow_database_as_path`](/pt-BR/reference/settings/session-settings/http#http_allow_database_as_path), esta é uma configuração por usuário; o roteamento de requisições baseadas em caminho é controlado globalmente pela configuração `http_allow_path_requests` no nível do servidor (o roteamento ocorre antes da autenticação).

<div id="http_allow_filters_as_unrecognized_url_parameters">
  ## http\_allow\_filters\_as\_unrecognized\_url\_parameters
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "0"},{"label": "Nova configuração para tratar parâmetros de URL não reconhecidos como expressões de filtro em requisições HTTP."}]}]} />

Quando habilitado, qualquer parâmetro de URL que não seja reconhecido como um parâmetro, uma configuração ou um prefixo `param_*` conhecido é tratado como um filtro e combinado com AND. São aceitas duas formas:

* Um `name=value` simples é convertido na igualdade `` `name` = 'value' `` (o identificador é delimitado por crases, e o valor é colocado entre aspas como um literal de string).
* Um operador de comparação (`!=`, `>`, `<`, `>=`, `<=`, `<>`) faz com que o parâmetro seja tratado como uma comparação: ele pode ser separado no parâmetro (`?a!=2`, `?a>=2`) ou escrito inline quando a URL não contém `=` para separá-lo (`?a<>2`, `?f(x)>3`); nesse caso, o `name[=value]` recomposto é convertido em uma expressão SQL completa.

<div id="http_allow_table_as_file">
  ## http\_allow\_table\_as\_file
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "0"},{"label": "Nova configuração para reconhecer um nome de tabela no caminho da URL de requisições HTTP, com extensões opcionais de formato\/compressão."}]}]} />

Quando habilitada, a interface HTTP reconhece o último componente do caminho da URL como um nome de tabela nas formas `table`, `table.format` ou `table.format.compression`. O caminho é interpretado como `SELECT * FROM table`.

Assim como [`http_allow_database_as_path`](/pt-BR/reference/settings/session-settings/http#http_allow_database_as_path), esta é uma configuração por usuário; o roteamento de requisições baseadas em caminho é controlado globalmente pela configuração `http_allow_path_requests` no nível do servidor (o roteamento ocorre antes da autenticação).

<div id="http_connection_timeout">
  ## http\_connection\_timeout
</div>

<SettingsInfoBlock type="Segundos" default_value="1" />

Tempo limite de conexão HTTP (em segundos).

Valores possíveis:

* Qualquer número inteiro positivo.
* 0 - Desativado (tempo limite infinito).

<div id="http_make_head_request">
  ## http\_make\_head\_request
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

A configuração `http_make_head_request` permite executar uma solicitação `HEAD` ao ler dados via HTTP para obter informações sobre o arquivo a ser lido, como seu tamanho. Como ela é habilitada por padrão, pode ser desejável desabilitar essa configuração nos casos em que o servidor não oferece suporte a solicitações `HEAD`.

<div id="http_native_compression_disable_checksumming_on_decompress">
  ## http\_native\_compression\_disable\_checksumming\_on\_decompress
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Ativa ou desativa a verificação de checksum ao descomprimir os dados de HTTP POST do cliente. Usado apenas para o formato de compressão nativo do ClickHouse (não é usado com `gzip` ou `deflate`).

Para mais informações, leia a [descrição da interface HTTP](/pt-BR/concepts/features/interfaces/http).

Valores possíveis:

* 0 — Desabilitado.
* 1 — Habilitado.

<div id="http_receive_timeout">
  ## http\_receive\_timeout
</div>

<SettingsInfoBlock type="Segundos" default_value="30" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.6"},{"label": "30"},{"label": "Consulte http_send_timeout."}]}]} />

Tempo limite para recebimento via HTTP (em segundos).

Valores possíveis:

* Qualquer número inteiro positivo (segundos). `0` **não** representa um tempo limite infinito e pode causar falhas ao estabelecer a conexão (os tempos limites de socket POSIX exigem um intervalo positivo).

<div id="http_send_timeout">
  ## http\_send\_timeout
</div>

<SettingsInfoBlock type="Segundos" default_value="30" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.6"},{"label": "30"},{"label": "3 minutos parece tempo demais. Observe que este é o tempo limite de uma única chamada de gravação na rede, não da operação de upload inteira."}]}]} />

Tempo limite de envio HTTP (em segundos).

Valores possíveis:

* Qualquer número inteiro positivo (segundos). `0` **não** representa um tempo limite infinito e pode causar falhas no estabelecimento da conexão (o tempo limite de socket POSIX exige um intervalo positivo).

<Note>
  Aplica-se apenas ao perfil padrão. É necessário reiniciar o servidor para que as alterações entrem em vigor.
</Note>

<div id="http_skip_not_found_url_for_globs">
  ## http\_skip\_not\_found\_url\_for\_globs
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Ignora URLs de globs com erro HTTP\_NOT\_FOUND

<div id="http_wait_end_of_query">
  ## http\_wait\_end\_of\_query
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Ativa a bufferização da resposta HTTP no servidor.

<div id="http_write_exception_in_output_format">
  ## http\_write\_exception\_in\_output\_format
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "0"},{"label": "Alterado para manter consistência entre os formatos"}]}, {"id": "row-2","items": [{"label": "23.9"},{"label": "1"},{"label": "Gera JSON/XML válido em caso de exceção no HTTP streaming."}]}]} />

Grava a exceção no formato de saída para gerar uma saída válida. Funciona com os formatos JSON e XML.

<div id="http_zlib_compression_level">
  ## http\_zlib\_compression\_level
</div>

<SettingsInfoBlock type="Int64" default_value="3" />

Define o nível de compressão de dados na resposta a uma requisição HTTP se [enable\_http\_compression = 1](/pt-BR/reference/settings/session-settings/enable#enable_http_compression).

Valores possíveis: números de 1 a 12. Níveis acima de `9` exigem a compilação padrão com `libdeflate`; uma compilação sem `libdeflate` oferece suporte aos níveis de 1 a 9.
