IT IT関連

301リダイレクト(.htaccess)による書き方

更新日:

301リダイレクトとは、ドメインの変更時やファイル名の変更等におけるURL変更時に
リダイレクト記述を行い、転送処理を実施します。

[toc]

ドメイン変更時のリダイレクト

以下のリダイレクト記述を「.htaccess」に記載してアップすると
全てのページが新ドメインに転送されます。

RewriteEngine On
RewriteCond %{http_host} ^test.example.jp
RewriteRule ^(.*) https://example.jp/$1 [R=301,L]

一部ページのリダイレクト

ファイル名の変更等に従う、一部ページのリダイレクトを記述する場合は、以下のように記載します。

RewriteEngine on
RewriteBase /
RewriteRule old\.html http://example.jp/new.html [R=301,L]

常時SSL対応による(https)へのリダイレクト

httpへのアクセスを全てhttpsにリダイレクトする場合は、以下のように記述します。

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

301リダイレクト、302リダイレクトの違い

301リダイレクト「恒久的」、302リダイレクト「一時的」はかなり似てるような感じがしますが、

厳密には違いします。

特に変わってくるのはブラウザ側のキャッシュの持ち方かと思います。

301リダイレクトが設定されている場合は、ブラウザはもうそのURLは使われないと認識して、リダイレクト情報をキャッシュに

保持を行い、旧URLは確認しなくなります。

それと違い、302リダイレクトは一時的なリダイレクトなのでキャッシュにせず、旧URLへの確認を行います。

一時的なメンテナンスや、一時的なページ閉鎖の際は「302リダイレクト」を使用しましょう!

  • この記事を書いた人
さすけ

さすけ

インフラ関連を中心に、仕事をしています。 最近はWeb開発の仕事も多いです。

-IT, IT関連
-, , ,

Copyright© さすけのプログラミング入門 , 2018 All Rights Reserved.