IT Notebook

とあるエンジニアの備忘録

NginxでURIに含まれるダブルスラッシュを1つにする

f:id:makaaso:20190320123324p:plain:w200
先日とあるサーバのNginxを設定している時にダブルスラッシュとダブルトレイリングスラッシュを1つにしてほしいとの依頼があったので対応しました。

やりたいこと

設定内容

nginx.confに追記

merge_slashes off;

※デフォルトで「merge_slashes off;」のようなので設定不要かも

locationディレクティブに設定

rewrite (.*)//+(.*) $1/$2 permanent;

トレイリングスラッシュが2つ以上ある場合

if ($request_uri ~* "\/\/") {
    rewrite ^/(.*) $scheme://$host/$1 permanent;
}

参考URL