トレイリングスラッシュ(Trailing Slash) ありに設定

URLの末尾のスラッシュのことをトレイリングスラッシュ(Trailing Slash)というそうで、これを統一したい。Googleさんが言うには、トレイリングスラッシュがあってもなくてもページの評価はかわらないそうで。

  • トレイリングスラッシュなし ‐ https://www.terakoya.work
  • トレイリングスラッシュあり ‐ https://www.terakoya.work/

ただ、GoogleAnalyticsでは別々のURLとしてカウントされてしまうようで、これはよくないと思い統一することにしました。

スラッシュなしの時にリダイレクト

RewriteCondで条件を追加します。ポイントは5行目で、末尾にスラッシュがなかった場合7行目のスラッシュ付きに301リダイレクトをするように設定。

# BEGIN WordPress

## トレイリングスラッシュ無し→有りに設定
RewriteEngine on
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.[^/\.]+$
RewriteRule .* %{REQUEST_URI}/ [R=301,L]

# END WordPress

できた!\(^o^)/
URLにあわせて、URLの正規化設定rel="canonical"もトレイリングスラッシュありのURLを設定するように設定しましょう。

ちなみに、さくらインターネットのレンタルサーバーでスタンダードプランを使っているのですが、2行目のRewriteEngine onがないと無限ループ(リダイレクトループ)に陥りました。こわいこわい。

参考サイト

Apache HTTP Server Tutorial: .htaccess files
https://httpd.apache.org/docs/2.4/en/howto/htaccess.html