7in
@7in

Как применить правила location nginx для изображений только на главной странице (корне) сайта?

Здравствуйте!
Существует задача: необходимо применять правила только к изображениям на главной странице сайта example.com/ при помощи location NGINX

Для теста создал директорию внутри сайта /test/

Какие директивы писать в location, чтобы обрабатывалось example.com/1.jpg, но не обрабатывалось example.com/test/1.jpg?

В данный момент конфиг такой:
server {
    ...
    location / {
    ...
    }

    location ~* ^/.*\.jpg$ {
    ...
    }


При этом обрабатываются все изображения на сервере...

Если же делаем наоборот:
server {
    ...
    location / {
    ...
    }

    location ~* ^/test/.*\.jpg$ {
    ...
    }


То всё работает верно, т.е. example.com/test/1.jpg попадает под правило, а example.com/1.jpg - нет

Подскажите, пожалуйста, как сделать подобное правило, но только для корня?
  • Вопрос задан
  • 294 просмотра
Решения вопроса 1
@dodo512
location ~* ^/[^/]+\.jpg$ {
    ...
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Используйте вложенные локейшены - верхнего уровня на /, внутри него для картинок.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы