Ошибка nginx pcre_compile при использовании квантификаторов


14

У меня проблема с псевдонимами. Я хочу добавить до первых 4 цифр файла как часть каталога. (например, '../123456.jpg'=>'../123/123456.jpg' и '../12.png'=>'../12/12.png')

Вот что у меня есть:

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

Это ошибка, которую я получаю:

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

У кого-нибудь есть идеи, как заставить это работать? Похоже, у него есть проблема с "{1,4}". Есть ли другой способ сделать то, что я хочу?


Вы должны принять решение @ShaneMadden, работает отлично!
Стефано

1
@ Stefano Спасибо за напоминание. Это не позволило мне принять это сразу, а потом я забыл об этом.
Эхо говорит Восстановить Монику

это происходит со мной все время и по разным причинам, поэтому я склонен вспоминать других ;-)
Stefano

Ответы:


24

Он показывает, что вы запускаете содержимое блока местоположения. Это неправильно цифры.

Оберните это в кавычки:

location ~ "^/i/gallery2/(\d{1,4})(.*)$" {
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.