CodeLog

.htaccessによるURL正規化

.htaccessを使ってURL正規化をおこなうパターンを紹介します。

https・wwwなし・indexなし

RewriteEngine on

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^.*/index.(html|htm|php)
RewriteRule ^index.(html|htm|php)$ https://example.com/$1 [R=301,L]

URLをhttps・wwwなし・indexなしのパターンで正規化します。ドメインはご利用のドメインに置き換えて使ってください。また最後に改行も忘れずに入れてください。.htaccess配下のページはすべてURL正規化されます。

https・wwwあり・indexなし

RewriteEngine on

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^.*/index.(html|htm|php)
RewriteRule ^index.(html|htm|php)$ https://example.com/$1 [R=301,L]

URLをhttps・wwwあり・indexなしのパターンで正規化します。ドメインはご利用のドメインに置き換えて使ってください。また最後に改行も忘れずに入れてください。.htaccess配下のページはすべてURL正規化されます。

PHPでURL正規化をおこないたい場合には以下のページを参照してください。
PHPでURL正規化