0

foo.com/?p=123nginx 301-redirect ワードプレススタイルのリンクを固定 URLに作成しようとしています。

If is悪と他のドキュメントから、危険なステートメントがパラメーターに基づいてリダイレクトする唯一の方法であることを収集し、ifこのような構成が仕事を成し遂げるように見えることがわかりました:

location / {
    root   /usr/share/nginx/html;
    index  index.html index.htm;
}

location = / {
    root   /usr/share/nginx/html;
    index  index.html index.htm;

    if ($arg_p = 4)  { return 301 /2012/12/hello-world; }
    if ($arg_p = 15) { return 301 /about;               }
    # ... a few hundred more lines like this
}

ifただし、この種の構成では、トップレベルのリクエストを解決するためだけにnginx がこれらすべてのステートメントを処理する必要があると思いfoo.com/ますが、これはおそらく理想的ではありません。

ifステートメントの危険性/コストを最小限に抑えながら、このようなリダイレクトの大きなリストをハードコーディングする「正しい」方法は何ですか?

4

1 に答える 1