Dividindo linhas longas em um arquivo de configuração nginx

13

Para não passar lixo para o back-end, tenho uma regex estrita para uma diretiva location . Parece assim:

location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/...(more|restrict).ext {
    # other directives
}

Eu gostaria de dobrar a linha em 80 caracteres, existe uma maneira de dividir a configuração? Os resultados a seguir resultam em um erro de sintaxe, mas é algo que estou procurando:

location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/"\
            "...(more|restrict).ext" {
# results in a literal newline (%0A) being accepted
location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/
...(more|restrict).ext" {

Não encontrei dicas na documentação ( link nem link menciona qualquer coisa sobre linhas de dobra)

    
por Lekensteyn 01.02.2014 / 23:51

1 resposta

5

Eu não acho que você possa fazer isso.

nginx trata todos os espaços em branco igualmente, então mesmo que você tente dividir sua string assim, e nginx possa analisar da maneira que você pretendia, você teria um regex com um monte de espaços em branco, o que eu sou com certeza não é o que você quer. Se o nginx não pudesse analisá-lo, o que é mais provável, você só teria um erro de sintaxe.

Você só precisará viver com algumas linhas longas ou expressões regulares menos complexas.

    
por 02.02.2014 / 00:15