try_filesに使用して、フォルダ名とを抽出しますブランチ。したがって、私はbranch1
,branch2
などのような複数の支店を持つことがあります。nginxの場所ディレクティブは、私は現在、restfullアプリケーションのためのtry_filesと一緒に次の場所ディレクティブを使用してい
したがって、作成するすべてのブランチごとに手動でディレクティブを作成する必要があります。
この問題を回避するには、という正規表現を使用してブランチ名を抽出し、それをtry_filesディレクティブで使用します。だから私はすべての支店の世話をする単一の場所の指示によって管理される動的なシステムを持っていただろう。
今までtry_filesで正規表現を使用しようとすると、405または404エラーが発生します。 (@Richardスミスの回答に基づいて)
私の最後の試み:
location ~ ^(/branches/[^/]+/app/api)/ {
try_files $uri $uri/ $1/api.php$is_args$args;
}
URIのマッチングのための405(許可されていません)応答を返しました。
私にとってはうまくいかないようです。 '/ branches/branch1/app/api /'に例をあててみましたが、 '〜^(/ branches/[^ /] +/app/api )/ 'と' $ 1/app/api.php'を使ったtry_filesです。助言がありますか? –
いくつかのオプションがありますが、問題を見ることなく、具体的な提案をすることは難しいです。あなたの質問の編集とあなたの事例の改善を検討するべきです。 –
これで私はその質問を明確にしました。場所については、 'app'サブフォルダを追加しました。 –