Nginx: 複数の URL を持つ書き換えルール

Nginx: 複数の URL を持つ書き換えルール

nginxを以下のような設定で書き換えたいwww.example.com/abc/xyz/test/

リダイレクト参考:だから、そのURLを持つすべてのページで機能する書き換えルールを作りたいので、これを試してみました。

 location ~* /abc/xyz/.*/$
        {
            rewrite ^/abc/xyz/.*/$  /abc/xyz/test.php last;
        }

このルールは機能しますが、常にtest.phpにリダイレクトされます。動的にしたいので、test2.php test3.phpでも機能します。URLは次のようになります。www.example.com/abc/xyz/test2/100 ページあるので、解決策が見つからない場合は 100 個のルールを記述する必要があります。ご協力いただければ幸いです。

答え1

try_files十分なはずです。

location / {
    try_files $uri $uri.php;
}

関連情報