WindowsのIISでURLのリダイレクト(転送)を設定する(基本編)Tech TIPS

Webサイトを別ドメインに引っ越した場合、何もしないと従来のURLはリンク切れになってしまう可能性がある。リンク切れを防ぐには、旧サイトに新サイトへの転送(リダイレクト)を設定する。IISにはリダイレクト機能があり、Webサイトのプロパティなどで設定できる。

» 2009年08月07日 05時00分 公開
[島田広道デジタルアドバンテージ]
Tech TIPS
Windows Server Insider


「Tech TIPS」のインデックス

連載目次

対象OS:Windows 2000+IIS 5.0 / Windows XP+IIS 5.1 / Windows Server 2003+IIS 6.0



解説

 Webサイトを運用していると、サイトを別のドメインに引っ越したり、コンテンツを一部移動したりしなければならないことがある。このとき、単にサイトの内容を移動しただけでは、ユーザーのブックマークや他サイトなどからのリンクが切れてしまい、ユーザーに迷惑をかけてしまうし、引っ越し先の新サイトへの集客も最初からやり直しになってしまう。

 そのため通常は、引っ越し前のサイトは一定期間残しておき、旧サイトには新サイトへの転送、すなわちリダイレクトを設定し、従来のURLへのアクセスを自動的に新URLへ誘導する。リダイレクトの手段には、HTML(METAタグ)やASPなどWebページの記述による方法と、Webサーバの機能を利用する方法に大別できる。Windows OSのInternet Information Services(IIS)もリダイレクト機能は装備しているが、さまざまなリダイレクトのパターンに対応するためか、設定方法は少し複雑である。

 そこで本稿ではWindows 2000/Windows XP/Windows Server 2003のIISを対象に、サイトまたはコンテンツの一部をリダイレクトするための基本的な設定方法について説明する。動的URLのリダイレクトなど、より高度な設定については、別途応用編として解説する。

操作方法

●IISのリダイレクト設定画面

 IISでURLのリダイレクトを設定するには、まず管理者アカウントでWindowsのコントロール・パネルから[管理ツール]−[インターネット インフォメーション サービス (IIS) マネージャ]を起動し、リダイレクト元となるWebサイトまたは仮想ディレクトリ、ファイルのプロパティを開く。なお、以下ではいずれもWindows Server 2003+IIS 6.0の画面を例に挙げているが、Windows 2000+IIS 5.0やWindows XP+IIS 5.1でも操作方法はほとんど変わらない(設定項目名などが若干異なる程度の違いしかない)。

リダイレクト元とするWebサイトまたは仮想ディレクトリのプロパティを開く リダイレクト元とするWebサイトまたは仮想ディレクトリのプロパティを開く
サイト全体をリダイレクトする場合は、対象のWebサイトを選んでプロパティを開く。特定の仮想ディレクトリのプロパティを開いて設定すると、その仮想ディレクトリ以下がリダイレクトされる。ファイルを選ぶと、リダイレクトされるのはそのファイルのみとなる。
  (1)Webサイトまたは仮想ディレクトリをリダイレクトする場合は、左ペインでツリーを展開して選ぶ。
  (2)特定ファイルをリダイレクトする場合は、左ペインでディレクトリを選んだ後に右ペインから選ぶ。
  (3)(2)で選択したものを右クリックして表示されるメニューから、これを選ぶ。→[A]

 Webサイトを選んでリダイレクトを設定すると、そのWebサイト全体がリダイレクトの対象となる。仮想ディレクトリの場合は、その仮想ディレクトリ以下の全ディレクトリ/ファイルがリダイレクトされる。単一のファイルのみリダイレクトするには、そのファイルのプロパティでリダイレクトを設定する。

 プロパティを開いたら、次のようにタブを選ぶ。

  • Webサイトのプロパティ:[ホーム ディレクトリ]タブ
  • 仮想ディレクトリのプロパティ:[ディレクトリ]タブ
  • 特定ファイルのプロパティ:[ファイル]タブ

 次に[URLへのリダイレクト]ラジオボタンをオンにすると、そのすぐ下に、リダイレクト先URLに関する4つの設定項目が現れる(1つのエディットボックスと3つのチェックボックス)。これらをどう設定するかでリダイレクト先URLやリダイレクト時の挙動が変わる。

[A]

URLのリダイレクトを設定する URLのリダイレクトを設定する
これはWebサイトのプロパティの例。リダイレクト先URLやリダイレクト時の挙動は、(2)(5)の設定によって変わる。具体的な設定方法は、この後でリダイレクトのパターンごとに説明する。
  (1)まず、これをオンにする。これにより、自動的にすぐ下の設定項目がURLリダイレクト用に切り替わる。
  (2)リダイレクト先のURL全体または一部を設定する。
  (3)これがオフだと、(2)のリダイレクト先URLの後に、リダイレクト元のパス(ディレクトリ/ファイル)を追加したURLにリダイレクトされる。オンの場合、リダイレクト元のパスは原則無視されて、(2)のURLがそのままリダイレクト先として用いられる。
  (4)リダイレクト先がリダイレクト元のディレクトリ・ツリー内にある場合、これをオンにする必要がある。オフのままだと、リダイレクトされなかったり、リダイレクト先ページを見つけられずにエラーになったりする。なおWindows 2000/Windows XPの場合、この設定項目の名称は[この下のディレクトリ]である。
  (5)これをオンにすると、リダイレクト時にクライアントへHTTPリターン・コード301すなわち「恒久的にURLが変更された」ことを通知する。オフの場合は、HTTPリターン・コード302すなわち「一時的にURLが変更されている」ことを通知する。検索エンジンもこのコードでURLの変更が恒久的か一時的か判断するので、適切に設定する必要がある。

 以下ではリダイレクトのパターンごとに、(2)(5)の設定項目をどのように設定すべきか、説明する。

●あるドメインから別のドメインに引っ越した場合

 ディレクトリ・ツリーなどWebサイトの構成を変えることなく、そのまま別のドメインに引っ越した場合がこれに該当する。例えば元のURLが「http://olddomain/dir1/content.html」であれば、新しいURLは「http://newdomain/dir1/content.html」というように、コンテンツのパスに変更はないものとする。

設定項目 設定内容
設定対象(プロパティの対象) 引っ越し前のドメインのWebサイト
[リダイレクト先] http://<リダイレクト先ドメイン名>
[上で入力した URL] オフ
[入力された URL の下のディレクトリ] オフ
[このリソースへ永続的にリダイレクトする] 恒久的な引っ越しならオン、一時的ならオフ
あるドメインから別のドメインに引っ越した場合の設定内容
<リダイレクト先ドメイン名>はFQDNで指定する。また末尾に「/」(スラッシュ)は付けない(付けると「/」が二重になる)。

 このパターンは「www.example.jp」のようなサブ・ドメインを含むURLを「example.jp」に統一する場合にも当てはまる。サブ・ドメインのサイトで上記のように設定して、example.jpにリダイレクトすればよい。

●サイト内でコンテンツを移動した場合

 Webサイトをリニューアルしたとき、従来のコンテンツの場所をサイト内で移動することがある。あるディレクトリ以下にあるコンテンツをそっくりそのまま別のディレクトリに移動した場合は、移動元のディレクトリだけ残して、そのプロパティでリダイレクト先などを次のように設定する。

設定項目 設定内容
設定対象 移動元ディレクトリ
[リダイレクト先] <移動先ディレクトリの絶対パス>
[上で入力した URL] オフ
[入力された URL の下のディレクトリ] 移動先が移動元のディレクトリ・ツリー以下にある場合はオン、それ以外ではオフ
[このリソースへ永続的にリダイレクトする] 恒久的な移動ならオン、一時的ならオフ
サイト内でコンテンツを移動した場合の設定内容
<移動先ディレクトリの絶対パス>は「/dir1/subdir2」のようにルート・ディレクトリからのフル・パスを指定する。やはり末尾には「/」(スラッシュ)は付けない。

●特定のファイルのみリダイレクトする場合

 サイト全体や仮想ディレクトリ丸ごとではなく、特定のファイルのみ別のファイルにリダイレクトするには、そのファイルのプロパティでリダイレクトを設定する。サイト外のURLにもリダイレクトできる。

設定項目 設定内容
設定対象 移動元のファイル
[リダイレクト先] <移動先ファイルの絶対パス>または<移動先URL>
[上で入力した URL] オフ
[入力された URL の下のディレクトリ] −(設定不可)
[このリソースへ永続的にリダイレクトする] 恒久的な移動ならオン、一時的ならオフ
特定のファイルのみリダイレクトする場合の設定内容
同じサイト内のファイルにリダイレクトする場合は、「/dir1/content.html」のようにファイル名までフル・パスで指定する。別サイトのファイルの場合は、「http://otherdomain/dir2/content.html」のように完全なURLを指定する。


 特定ページへ一律にリダイレクトしたり、動的URLをリダイレクトしたりするための設定については、別途応用編として解説する予定だ。

「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

AI for エンジニアリング
「サプライチェーン攻撃」対策
1P情シスのための脆弱性管理/対策の現実解
OSSのサプライチェーン管理、取るべきアクションとは
Microsoft & Windows最前線2024
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。