Errore nginx pcre_compile quando si usano i quantificatori


14

Sto riscontrando un problema con l'aliasing. Voglio aggiungere fino alle prime 4 cifre del file come parte della directory. (come '../123456.jpg'=>'../123/123456.jpg' e '../12.png'=>'../12/12.png')

Ecco cosa ho:

location ~ ^/i/gallery2/(\d{1,4})(.*)$ {
    alias /home/web/images/gallery/$1/$1$2;
}

Questo è l'errore che ottengo:

nginx: [emerg] pcre_compile() failed: missing ) in "^/i/gallery2/(\d"

Qualcuno ha qualche idea su come farlo funzionare? Sembra che abbia un problema con "{1,4}" C'è un altro modo per fare ciò che voglio?


dovresti accettare la soluzione @ShaneMadden, funziona perfettamente!
Stefano

1
@Stefano Grazie per il promemoria. Non mi ha permesso di accettarlo subito e poi me ne sono dimenticato.
Echo dice che ripristina Monica il

mi capita sempre e per vari motivi, è per questo che tendo a ricordare gli altri ;-)
Stefano

Risposte:


24

Immagina che stai iniziando il contenuto del blocco posizione. Sembra sbagliato.

Avvolgilo tra virgolette:

location ~ "^/i/gallery2/(\d{1,4})(.*)$" {
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.