/api/lang?lang=en
のようなクエリがあり、nginxで/server/i18n-angular/en.json
として提供したい。どうやってやるの?
次のディレクトリ構造があります。
/public/
/server/i18n-angular/en.json
私は次の設定をしていますが、nginxはその時点でインデックスディレクティブを使用するのは間違っていると言っています。
server {
root /public
...
location /api/lang {
if ($args ~* "\?lang=(.+)") {
set $language $1;
index ../server/i18n-angular/$language.json;
}
}
}
index
の代わりにどのディレクティブを使用すればよいですか?
別のlocation
が必要だとはまったく思いません。単純なrewrite
で十分です。
例えば:
server {
rewrite /api/lang /server/i18n-angular/$arg_lang.json last;