6 votes

Comment servir des fichiers statiques spécifiques avec nginx ?

J'ai des requêtes comme /api/lang?lang=en que je veux servir avec nginx en tant que /server/i18n-angular/en.json . Comment puis-je le faire ?

J'ai la structure de répertoire suivante :

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

J'ai la configuration suivante, mais nginx dit qu'il n'est pas correct d'utiliser la directive index à ce stade.

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

Quelle directive dois-je utiliser à la place de index ?

6voto

Michael Hampton Points 232226

Je ne vois pas pourquoi vous avez besoin d'un système séparé location du tout. Un simple rewrite devrait faire.

Par exemple :

server {
    rewrite /api/lang /server/i18n-angular/$arg_lang.json last;

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X