Как обслуживать определенные статические файлы с помощью nginx?

У меня есть вопросы как /api/lang?lang=en который я хочу служить с nginx как /server/i18n-angular/en.json, Как я могу это сделать?

У меня есть следующая структура каталогов:

/public/
/server/i18n-angular/en.json

У меня есть следующая конфигурация, но nginx говорит, что в этой точке неправильно использовать директиву index.

server {
  root /public
  ...
  location /api/lang {
    if ($args ~* "\?lang=(.+)") {
      set $language $1;
      index ../server/i18n-angular/$language.json;
    }
  }
} 

Какую директиву я должен использовать вместо index?

1 ответ

Решение

Я не вижу, что вам нужен отдельный location совсем. Просто rewrite следует сделать.

Например:

server {
    rewrite /api/lang /server/i18n-angular/$arg_lang.json last;
Другие вопросы по тегам